Foros del Web » Programando para Internet » PHP »

Reconocimiento de Formulario [Automatico] con PHP

Estas en el tema de Reconocimiento de Formulario [Automatico] con PHP en el foro de PHP en Foros del Web. Hola, tengo un gran dilema... Ya me ayudaron a que PHP me reconozca varios campos que JavaScript los agrega con una funcion... Pero tengo otra ...
  #1 (permalink)  
Antiguo 26/09/2009, 21:27
Avatar de kuriel  
Fecha de Ingreso: febrero-2009
Mensajes: 240
Antigüedad: 15 años, 8 meses
Puntos: 4
Reconocimiento de Formulario [Automatico] con PHP

Hola, tengo un gran dilema...

Ya me ayudaron a que PHP me reconozca varios campos que JavaScript los agrega con una funcion...

Pero tengo otra cosa...

Desde el principio:

>> Tengo un codigo JavaScript que me agrega varios campos INPUT del tipo TEXTO.
>> Esos valores los toma PHP al hacer un POST con el formulario
>> Arrastro valores hacia mi archivo PHP con el formulario antes mencionado.
>> Luego, lo que sucede es que mis distintos campos INPUT TIPO TEXTO hacen lo siguiente:

Código PHP:
<? echo $fondo?>
Donde; $fondo es el nombre de mis "n" campos anteriores, si se crearon 5 campos, hay 5 INPUTS con NAME="FONDO", echo muestra 5 valores ingresados, hasta ahi todo bien...

>> El problema surge de que estos valores arrastrados se agregan a otro formulario, donde los valores ingresados al INPUT TIPO TEXTO se van a convertir en NAME="OTRO<? echo $fondo; ?>"

Y me gustaria saber como hacer el POST a un siguiente PHP, si los valores van a ser una VARIABLE.

Es decir, el nombre "name" va a cambiar siempre.


AHORA LA PREGUNTA.

Si mis "name" siempre cambian, ¿Como hago para que PHP reconozca automáticamente el "name" de un formulario?

Código 1:
Ver original
  1. no puedo hacer:
  2.  
  3. $nuevo = ($_POST['name$fondo']);
  4.  
  5. ???
  6.  
  7. o como se hará???
__________________
Si todas las URL's que tienes o visitas te parecen largas, visita www.korto.tk - También protege de rastros y con contraseñas tus páginas o URL's.
  #2 (permalink)  
Antiguo 26/09/2009, 22:12
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: Reconocimiento de Formulario [Automatico] con PHP

Para eso te sugiero usar array asociativos. Ejemplo
Código PHP:
Ver original
  1. <?php
  2. foreach($_GET["name"] as $v){
  3.   echo $v."<br />";
  4. }
  5. ?>
  6. <form action="index.php">
  7. <input type="text" name="name['<?php echo $fondo; ?>']" value="1" />
  8. <input type="text" name="name['<?php echo $fondo; ?>']" value="1" />
  9. <input type="text" name="name['<?php echo $fondo; ?>']" value="1" />
  10. <input type="text" name="name['<?php echo $fondo; ?>']" value="1" />
  11. <input type="text" name="name['<?php echo $fondo; ?>']" value="1" />
  12. <input type="submit" />
  13. </form>
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 26/09/2009, 22:21
 
Fecha de Ingreso: enero-2009
Ubicación: Chile
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Reconocimiento de Formulario [Automatico] con PHP

Aquí hay que tratar la información de igual manera como es recibida, ya que en este caso se esta recibiendo por medio de POST un array con los valores, por lo cuál la recepción del script local debera tratar de igual manera la información recibida como muestra abimaelrc mas arriba.

Aunque en este caso yo recomendaria editar el codigo de javascript que genera los campos, para que cambie el valor de name por valores asociativos a lo que se espera recibir.
  #4 (permalink)  
Antiguo 27/09/2009, 11:28
Avatar de kuriel  
Fecha de Ingreso: febrero-2009
Mensajes: 240
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Reconocimiento de Formulario [Automatico] con PHP

Sigo sin entender...

Ahora tengo este problema, es lo mismo que puse un poco mas arriba:


>> Tengo un formulario

>> Ese formulario tiene varios INPUTS tipo TEXTO

>> El nombre inicial de esos Inputs es: name="nombre[]"

>> se hace un POST y Arrastro valores

Ahora:

>> Tengo esos Inputs (nombre[]) y aparte se crean "subniveles" nuevos Inputs con el mismo nombre pero con secuencia:

>> El nombre de esos Inputs es: name="'.$secuencia.'nombre[]"

>>>> Donde: secuencia = al numero de campos creados, de 1 a "n" campos

>> Entonces el nombre de los Inputs queda: name="1nombre[]", name="2nombre[]" name="3nombre[]" , etc... [los que haya creado el usuario por medio de JavaScript]


>> El usuario CREA mas campos dentro de 1nombre, dentro de 2nombre, etc.

>>>> El usuario ha creado de 1 a "n" campos de 1nombre, por decir, si ha creado 4 campos: name="1nombre[]", name="1nombre[]", name="1nombre[]", name="1nombre[]"


LA PREGUNTA:

¿Como hago para que PHP reconozca cada uno de estos campos?

Si los nombres van a ser, de: 1nombre[] a "n"nombre[]

Los antes creados, y los que se crearon despues, ordenandolos como Nivel y subnivel, (por asi decirlo).

Tomando en cuenta que el usuario tanto puede crear 1 campo, como puede crear "n" [infinitos].
__________________
Si todas las URL's que tienes o visitas te parecen largas, visita www.korto.tk - También protege de rastros y con contraseñas tus páginas o URL's.

Última edición por kuriel; 27/09/2009 a las 11:34
  #5 (permalink)  
Antiguo 27/09/2009, 11:47
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: Reconocimiento de Formulario [Automatico] con PHP

Es que no tiene logica usar secuencias y mas complicado trabajar de esa forma con PHP. Lo mejor es solamente crear nombre[ ]. Eso para PHP ya tiene una secuencia y no te tienes que preocupar por asignarle un numero. Si lo que deseas es crear subnivenes usa array tambien para eso. Por ejemplo

nombre[ ][ ]
nombre[ ][ ]
nombre[ ][ ]
nombre[ ][ ]

Pero viendo lo que estas haciendo no creo que sea necesario porque ya de por sí solamente necesitas el primer array.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #6 (permalink)  
Antiguo 27/09/2009, 12:02
Avatar de kuriel  
Fecha de Ingreso: febrero-2009
Mensajes: 240
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Reconocimiento de Formulario [Automatico] con PHP

hmmm... me temo que si es muy necesario, por que al final no puedo convinar todos esos valores con el mismo nombre, los tengo que identificar uno por uno, por que si en tooodo mi formulario hago:

nombre[]

A todo, pues al final, cuando busque los valores, pues no voy a saber cual es cual, si pongo que

nombre[] es un Usuario y
nombre[] es su pagina o un archivo

Pues ahi es cuando se va a confundir los valores, por eso es que pido ayuda, por que es un poco enredado...
__________________
Si todas las URL's que tienes o visitas te parecen largas, visita www.korto.tk - También protege de rastros y con contraseñas tus páginas o URL's.
  #7 (permalink)  
Antiguo 27/09/2009, 12:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Reconocimiento de Formulario [Automatico] con PHP

kuriel, pues usa tu sentido común...

piensa, si creas "secuencias" entonces ¿como vas adivinarlas en tu script PHP??

si lo ves así... no tiene sentido, ya que crearías variables que ni tu mismo podrías intervenir...
así que la única solución es usar name del tipo array(), como ya te han dicho...

pero por favor, usa tu cerebro... ¿para que nombrar a todos nombre[]??

osea... si puedes nombrarlos tal y como necesites
nombre[]
url[]
archivo[]
loquesea[]


y así, se mantiene una asociación que si vas a poder tratar... y muy fácilmente, ya que al recibirlos PHP son convertidos como arrays...

suerte!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 27/09/2009, 12:36
Avatar de kuriel  
Fecha de Ingreso: febrero-2009
Mensajes: 240
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Reconocimiento de Formulario [Automatico] con PHP

Cita:
Iniciado por pateketrueke Ver Mensaje
kuriel, pues usa tu sentido común...

piensa, si creas "secuencias" entonces ¿como vas adivinarlas en tu script PHP??

si lo ves así... no tiene sentido, ya que crearías variables que ni tu mismo podrías intervenir...
así que la única solución es usar name del tipo array(), como ya te han dicho...

pero por favor, usa tu cerebro... ¿para que nombrar a todos nombre[]??

osea... si puedes nombrarlos tal y como necesites
nombre[]
url[]
archivo[]
loquesea[]


y así, se mantiene una asociación que si vas a poder tratar... y muy fácilmente, ya que al recibirlos PHP son convertidos como arrays...

suerte!!
Trankilizate y tambien UTILIZA TU CEREBRO y aprende a leer.

YO NO QUIERO QUE TODOS SEAN nombre[]

son:
nombre[]
1nombre[]
2nombre[]
3nombre[]

ASI QUE CUIDADO CON LO QUE DICES, NO ERES EL UNICO QUE SABE OFENDER...

APRENDE A LEER...

Y dime como es que JavaScript NO VA A CREAR SECUENCIAS...

O dime otra forma de que el usuario ingrese los campos que el necesita y luego reconocerlos con PHP...
__________________
Si todas las URL's que tienes o visitas te parecen largas, visita www.korto.tk - También protege de rastros y con contraseñas tus páginas o URL's.
  #9 (permalink)  
Antiguo 27/09/2009, 12:46
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Reconocimiento de Formulario [Automatico] con PHP

pues si, ya habia leido todo antes de... no te ofendas!!

me refiero a que, en primer lugar PHP no acepta variables que comiencen con un numero...
luego, lo mas sencillo que puedes hacer es que con Javascript coloques un name mas dinamico... y con sentido logico

Código:
name="datos[tipo][]"
y con PHP lo reconoces muy facilmente...
Código PHP:
foreach ($_POST['datos'] as $tipo => $valor// ... 
ya que se nota que no entiendes, si creas una variable por ejemplo: name="nombre33"

¿¿como pensabas adivinarla con PHP??

ya que si el caso es que puedas indexar las variables, pues es mas facil... usa name="nombre[33]"

bingo!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 27/09/2009, 12:51
Avatar de kuriel  
Fecha de Ingreso: febrero-2009
Mensajes: 240
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Reconocimiento de Formulario [Automatico] con PHP

Cita:
Iniciado por pateketrueke Ver Mensaje
pues si, ya habia leido todo antes de... no te ofendas!!

me refiero a que, en primer lugar PHP no acepta variables que comiencen con un numero...
luego, lo mas sencillo que puedes hacer es que con Javascript coloques un name mas dinamico... y con sentido logico

Código:
name="datos[tipo][]"
y con PHP lo reconoces muy facilmente...
Código PHP:
foreach ($_POST['datos'] as $tipo => $valor// ... 
ya que se nota que no entiendes, si creas una variable por ejemplo: name="nombre33"

¿¿como pensabas adivinarla con PHP??

ya que si el caso es que puedas indexar las variables, pues es mas facil... usa name="nombre[33]"

bingo!!
Te tardaste, ya lo habian resuelto en otro lado...

Y si, con el nombre[n]...
__________________
Si todas las URL's que tienes o visitas te parecen largas, visita www.korto.tk - También protege de rastros y con contraseñas tus páginas o URL's.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:14.