Foros del Web » Programando para Internet » PHP »

problemas con puntos en formaulario

Estas en el tema de problemas con puntos en formaulario en el foro de PHP en Foros del Web. Buenas, mi pregunta es la siguiente: Tengo un formulario que tiene un punto en el campo name <input type="text" name="0216.426" size="3"> y a la hora ...
  #1 (permalink)  
Antiguo 29/05/2003, 10:52
 
Fecha de Ingreso: febrero-2003
Mensajes: 93
Antigüedad: 21 años, 2 meses
Puntos: 0
problemas con puntos en formaulario

Buenas, mi pregunta es la siguiente:
Tengo un formulario que tiene un punto en el campo name
<input type="text" name="0216.426" size="3">
y a la hora de leer el nombre del campo con un foreach me escribe un subguión es decir 0216_426. Yo necesito que el nombre del campo este igual que en el formulario, es decir con el punto. pero no se me ocurre por que sucede esto.
De antemano muchas gracias
  #2 (permalink)  
Antiguo 29/05/2003, 12:22
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Como name de tu <input> has de usar base64_encode() cuando generes dicho nombre que use puntos ..

Luego tienes que aplicar base64_decode() a la hora de leer los datos ...

Y .. si usas arrays te evitas esos porblemas

<input type="text" name="dato[0216.426]" size="3">

El indice será tu dato .. ($indice en este caso)

Código PHP:
foreach ($_POST['dato'] as $indice => $valor){
   echo 
$indice;


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 30/05/2003, 01:42
 
Fecha de Ingreso: febrero-2003
Mensajes: 93
Antigüedad: 21 años, 2 meses
Puntos: 0
Muchisimas gracias lo he comprobado y funciona, pero por que sucede esto hay por ahi algún link con una explicación.

Gracias
  #4 (permalink)  
Antiguo 30/05/2003, 02:17
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Bueno, no se si hay algun sitio donde lo explican, pero voy a tratar de explicarlo.

Con register_globals a on todos los campos de los formularios se convierten en variables con el nombre del campo. En tu caso, la variable seria $0216.426, que no es un nombre de variable valido. Primero, porque tiene un punto y para PHP seria concatenar la variable $0216 con el entero 426. Y segundo, porque el nombre de una variable no puede empezar por un numero. Lo del punto lo soluciona directamente PHP cambiandolo por _. Pero lo de empezar por numero, eso creo que ya no lo gestiona.

Espero haber sido de ayuda.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 30/05/2003, 06:25
 
Fecha de Ingreso: febrero-2003
Mensajes: 93
Antigüedad: 21 años, 2 meses
Puntos: 0
Muchas gracias, creo que lo he comprendido
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 19:10.