• Viernes 3 de Mayo de 2024, 14:01

Autor Tema:  Arrays De Html A Php  (Leído 2521 veces)

Gallagher

  • Miembro activo
  • **
  • Mensajes: 51
    • Ver Perfil
    • http://www.desvelat.com.ar
Arrays De Html A Php
« en: Miércoles 26 de Mayo de 2004, 19:07 »
0
Holas

tengo un array de texfields, texbox, inputs cmo quiran llamarle

llamad ITEM

y cuadno lo leo con el

Código: Text
  1.  
  2. for ($x=1;$x< 13; $x++)
  3. {  
  4.     $_POST[item[$x]];
  5. }
  6.  
  7.  


me da error da error
si leo sin el $_POST
osea como item

no me trae nda (sipongo que sera por la version de mi php)

please ncesito su ayuda

desde ya muchas gracias

Oliverio

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Re: Arrays De Html A Php
« Respuesta #1 en: Jueves 27 de Mayo de 2004, 09:10 »
0
En PHP4 tenes la intruccion foreach para estos temas:
Código: Text
  1. foreach($HTTP_POST_VARS['ITEM_QUE_ES_UN_ARRAY'] as $clave => $val){
  2.     echo "$clave => $val<br>";
  3. }
  4.  
pero en PHP3 o menor:
Código: Text
  1. while (list ($clave, $val) = each ($HTTP_POST_VARS['ITEM_QUE_ES_UN_ARRAY'])) {
  2.     echo "$clave => $val<br>";
  3. }
  4.  

Yo personalmene usaria la segunda forma ya que nunca vas a tener problemas con algun servidor que este desactualizado.

Se me olvidaba, yo usaria un
Código: Text
  1. if (is_array($HTTP_POST_VARS['ITEM_QUE_ES_UN_ARRAY'])){
  2. ...}
  3.  
porque si $HTTP_POST_VARS['ITEM_QUE_ES_UN_ARRAY'] no es un array, el each o el foreach te tiran un warning.

Gallagher

  • Miembro activo
  • **
  • Mensajes: 51
    • Ver Perfil
    • http://www.desvelat.com.ar
Re: Arrays De Html A Php
« Respuesta #2 en: Jueves 27 de Mayo de 2004, 20:37 »
0
No existe una forma sin usar un for each?

no importa que el vector sea de textfiedls y no un vector declarado en php?

Avalon

  • Miembro MUY activo
  • ***
  • Mensajes: 448
    • Ver Perfil
Re: Arrays De Html A Php
« Respuesta #3 en: Jueves 27 de Mayo de 2004, 22:19 »
0
Haciéndome una idea de tu código HTML creo que podrías probar con esto:

Código: Text
  1. for ($x=1;$x< 13; $x++)
  2. {  
  3.    $_POST['item['.$x.']'];
  4. }
  5.  

Si no funciona adjunta el código HTML del formulario a ver si damos con la solución.

Salu2,
Avalon

Gallagher

  • Miembro activo
  • **
  • Mensajes: 51
    • Ver Perfil
    • http://www.desvelat.com.ar
Re: Arrays De Html A Php
« Respuesta #4 en: Viernes 28 de Mayo de 2004, 14:38 »
0
Código: Text
  1.  
  2. $SQL= "insert into tragos_items(id_trago,ingrediente) values (2,'".$_POST['item['.$x.']']."')";
  3.  
  4.  

esta sentencia sql , utilizo, pero no me trae nada en el POST
y como dije antes el item es un

Código: Text
  1.  
  2. for ($x=1;$x< $_POST[txtCantidad]+1; $x++)
  3. {
  4.       print("<tr>");
  5.       print("<td width='60%'><font face='Verdana'>Item ".$x."</font></td>");
  6.       print("<td width='46%'><font face='Verdana'><input type='text' name='item' size='20'></font></td>");
  7.       print("</tr>");
  8.   }
  9.  
  10.  

que creo
como un vector de texts

Avalon

  • Miembro MUY activo
  • ***
  • Mensajes: 448
    • Ver Perfil
Re: Arrays De Html A Php
« Respuesta #5 en: Viernes 28 de Mayo de 2004, 15:14 »
0
No creo que haya forma de pasar un array de textbox desde el formulario y si estoy equivocado que alguien me corrija :) Deberías ponerle un nombre diferente a cada textbox, algo así...

Código: Text
  1. for ($x=1;$x< $_POST[txtCantidad]+1; $x++)
  2. {
  3.      print("<tr>");
  4.      print("<td width='60%'><font face='Verdana'>Item ".$x."</font></td>");
  5.      print("<td width='46%'><font face='Verdana'><input type='text' name='item[".$x."]' size='20'></font></td>");
  6.      print("</tr>");
  7.  }
  8.  


Los corchetes no tienen ninguna utilidad en este caso, ya que no es realmente un array sinó que forman parte del nombre del elemento, pero debería funcionar igual (no lo he probado). Si le quieres quitar los corchetes recuerda quitarlos tanto en el bucle anterior como en la sentencia SQL.

Gallagher

  • Miembro activo
  • **
  • Mensajes: 51
    • Ver Perfil
    • http://www.desvelat.com.ar
Re: Arrays De Html A Php
« Respuesta #6 en: Viernes 28 de Mayo de 2004, 16:31 »
0
avalon yo ya habia probado eso

pero como pondira entonces vos la sentencia SQL?


si pones esos corchetes, no me trae nada  :(  :(

a ver si no como harias vos esto

tengo que agregar items a una tabla items y los items obio se generan segun la cantidad que el tipo ingreso (Cantidad de items)
como
meterias vos en una talba dinamicantem esos imtes?

yo loque hice fue generar texts segun la cantidad , pero depues tengo que guardarlos

Oliverio

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Re: Arrays De Html A Php
« Respuesta #7 en: Sábado 29 de Mayo de 2004, 03:52 »
0
Ahora entiendo, tu prolema esta en la forma de declarar un array de textbox, todos los items de un array tienen que tener el miso nombre seguidos de"[]"
name='item[]'
Quedando tu codigo:
Código: Text
  1. for ($x=1;$x< $_POST[txtCantidad]+1; $x++)
  2. {
  3.      print("<tr>");
  4.      print("<td width='60%'><font face='Verdana'>Item ".$x."</font></td>");
  5.      print("<td width='46%'><font face='Verdana'><input type='text' name='item[]' size='20'></font></td>");
  6.      print("</tr>");
  7.  }
  8.  

en cuanto a la pregunta que si existe otra manera de acceder al array, seria:
Código: Text
  1. $HTTP_POST_VARS['item'][$POS+1]
  2.  
el +1 es porque este array empiesa en 1

Gallagher

  • Miembro activo
  • **
  • Mensajes: 51
    • Ver Perfil
    • http://www.desvelat.com.ar
Re: Arrays De Html A Php
« Respuesta #8 en: Martes 1 de Junio de 2004, 21:04 »
0
muchismas gracias funciono........ les agradesco a todos