Foros del Web » Programando para Internet » PHP »

Guardar varios valores de input text en una variable

Estas en el tema de Guardar varios valores de input text en una variable en el foro de PHP en Foros del Web. Hola amigos, no se como guardar varios datos en una sola variable para que los vaya insertando en una tabla. Tengo lo siguiente: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); ...
  #1 (permalink)  
Antiguo 14/02/2012, 08:35
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Pregunta Guardar varios valores de input text en una variable

Hola amigos, no se como guardar varios datos en una sola variable para que los vaya insertando en una tabla.

Tengo lo siguiente:

Código HTML:
Ver original
  1.   <tr>
  2.     <td colspan="7" align="left"><h4>6. TARIFAS HOSPEDAJE</h4></td>
  3.     </tr>
  4.   <tr class="letra1">
  5.     <td bgcolor="#97C7EA">Temporada</td>
  6.     <td bgcolor="#97C7EA">Tipo de Habitación</td>
  7.     <td bgcolor="#97C7EA">Tarifa (Bs. Noche) domingo a jueves</td>
  8.     <td bgcolor="#97C7EA">Tarifa (Bs. Noche) viernes ó sábado</td>
  9.     <td colspan="2" bgcolor="#97C7EA">Tarifa (Bs. Noche) viernes y sábado</td>
  10.   </tr>
  11.   <tr>
  12.     <td rowspan="9" align="center" valign="middle"><br /><br /><br /><br />      
  13.       Alta
  14.      
  15.       <label for="temporada1"></label></td>
  16.     </tr>
  17.   <tr>
  18.     <td align="left"><label for="palta1"></label>
  19.       <select name="palta1" id="palta1">
  20.         <option value="1 persona">1 persona</option>
  21.       </select></td>
  22.     <td align="center"><input name="a_dom_jueves1" type="text" id="a_dom_jueves1" size="30" /></td>
  23.     <td align="center"><input name="a_viernes_o_sabado1" type="text" id="a_viernes_o_sabado1" size="30" /></td>
  24.     <td colspan="2" align="center"><input name="a_viernes_y_sabado1" type="text" id="a_viernes_y_sabado1" size="30" /></td>
  25.     </tr>
  26.   <tr>
  27.     <td align="left"><select name="palta2" id="palta2">
  28.       <option value="2 personas">2 personas</option>
  29.     </select></td>
  30.     <td align="center"><input name="a_dom_jueves2" type="text" id="a_dom_jueves2" size="30" /></td>
  31.     <td align="center"><input name="a_viernes_o_sabado2" type="text" id="a_viernes_o_sabado2" size="30" /></td>
  32.     <td colspan="2" align="center"><input name="a_viernes_y_sabado2" type="text" id="a_viernes_y_sabado2" size="30" /></td>
  33.     </tr>
  34.   <tr>
  35.     <td align="left"><select name="palta3" id="palta3">
  36.       <option value="3 personas">3 personas</option>
  37.     </select></td>
  38.     <td align="center"><input name="a_dom_jueves3" type="text" id="a_dom_jueves3" size="30" /></td>
  39.     <td align="center"><input name="a_viernes_o_sabado3" type="text" id="a_viernes_o_sabado3" size="30" /></td>
  40.     <td colspan="2" align="center"><input name="a_viernes_y_sabado3" type="text" id="a_viernes_y_sabado3" size="30" /></td>
  41.     </tr>
  42.   <tr>
  43.     <td align="left"><select name="palta4" id="palta4">
  44.       <option value="4 personas">4 personas</option>
  45.     </select></td>
  46.     <td align="center"><input name="a_dom_jueves4" type="text" id="a_dom_jueves4" size="30" /></td>
  47.     <td align="center"><input name="a_viernes_o_sabado4" type="text" id="a_viernes_o_sabado4" size="30" /></td>
  48.     <td colspan="2" align="center"><input name="a_viernes_y_sabado4" type="text" id="a_viernes_y_sabado4" size="30" /></td>
  49.     </tr>
  50.   <tr>
  51.     <td align="left"><select name="palta5" id="palta5">
  52.       <option value="5 personas">5 personas</option>
  53.     </select></td>
  54.     <td align="center"><input name="a_dom_jueves5" type="text" id="a_dom_jueves5" size="30" /></td>
  55.     <td align="center"><input name="a_viernes_o_sabado5" type="text" id="a_viernes_o_sabado5" size="30" /></td>
  56.     <td colspan="2" align="center"><input name="a_viernes_y_sabado5" type="text" id="a_viernes_y_sabado5" size="30" /></td>
  57.     </tr>
  58.   <tr>
  59.     <td align="left"><select name="palta6" id="palta6">
  60.       <option value="6 personas">6 personas</option>
  61.     </select></td>
  62.     <td align="center"><input name="a_dom_jueves6" type="text" id="a_dom_jueves6" size="30" /></td>
  63.     <td align="center"><input name="a_viernes_o_sabado6" type="text" id="a_viernes_o_sabado6" size="30" /></td>
  64.     <td colspan="2" align="center"><input name="a_viernes_y_sabado6" type="text" id="a_viernes_y_sabado6" size="30" /></td>
  65.     </tr>
  66.   <tr>
  67.     <td align="left"><select name="palta7" id="palta7">
  68.       <option value="7 personas">7 personas</option>
  69.     </select></td>
  70.     <td align="center"><input name="a_dom_jueves7" type="text" id="a_dom_jueves7" size="30" /></td>
  71.     <td align="center"><input name="a_viernes_o_sabado7" type="text" id="a_viernes_o_sabado7" size="30" /></td>
  72.     <td colspan="2" align="center"><input name="a_viernes_y_sabado7" type="text" id="a_viernes_y_sabado7" size="30" /></td>
  73.     </tr>
  74.   <tr>
  75.     <td align="left"><select name="palta8" id="palta8">
  76.       <option value="8 personas">8 personas</option>
  77.     </select></td>
  78.     <td align="center"><input name="a_dom_jueves8" type="text" id="a_dom_jueves8" size="30" /></td>
  79.     <td align="center"><input name="a_viernes_o_sabado8" type="text" id="a_viernes_o_sabado8" size="30" /></td>
  80.     <td colspan="2" align="center"><input name="a_viernes_y_sabado8" type="text" id="a_viernes_y_sabado8" size="30" /></td>
  81.     </tr>
  82.   <tr>
  83.     <td colspan="6" bgcolor="#E2F0FA">&nbsp;</td>
  84.     </tr>
  85.   <tr>
  86.     <td rowspan="8" align="center"><br /><br /><br /><br />      
  87.       Baja      </td>
  88.     <td align="left"><select name="pbaja1" id="pbaja1">
  89.       <option value="1 persona">1 persona</option>
  90.     </select></td>
  91.     <td align="center"><input name="b_dom_jueves1" type="text" id="b_dom_jueves1" size="30" /></td>
  92.     <td align="center"><input name="b_viernes_o_sabado1" type="text" id="b_viernes_o_sabado1" size="30" /></td>
  93.     <td colspan="2" align="center"><input name="b_viernes_y_sabado1" type="text" id="b_viernes_y_sabado1" size="30" /></td>
  94.     </tr>
  95.   <tr>
  96.     <td align="left"><select name="pbaja2" id="pbaja2">
  97.       <option value="2 personas">2 personas</option>
  98.     </select></td>
  99.     <td align="center"><input name="b_dom_jueves2" type="text" id="b_dom_jueves2" size="30" /></td>
  100.     <td align="center"><input name="b_viernes_o_sabado2" type="text" id="b_viernes_o_sabado2" size="30" /></td>
  101.     <td colspan="2" align="center"><input name="b_viernes_y_sabado2" type="text" id="b_viernes_y_sabado2" size="30" /></td>
  102.     </tr>
  103.   <tr>
  104.     <td align="left"><select name="palta9" id="palta9">
  105.       <option value="3 personas">3 personas</option>
  106.     </select></td>
  107.     <td align="center"><input name="b_dom_jueves3" type="text" id="b_dom_jueves3" size="30" /></td>
  108.     <td align="center"><input name="b_viernes_o_sabado3" type="text" id="b_viernes_o_sabado3" size="30" /></td>
  109.     <td colspan="2" align="center"><input name="b_viernes_y_sabado3" type="text" id="b_viernes_y_sabado3" size="30" /></td>
  110.     </tr>
  111.   <tr>
  112.     <td align="left"><select name="palta11" id="palta11">
  113.       <option value="4 personas">4 personas</option>
  114.     </select></td>
  115.     <td align="center"><input name="b_dom_jueves4" type="text" id="b_dom_jueves4" size="30" /></td>
  116.     <td align="center"><input name="b_viernes_o_sabado4" type="text" id="b_viernes_o_sabado4" size="30" /></td>
  117.     <td colspan="2" align="center"><input name="b_viernes_y_sabado4" type="text" id="b_viernes_y_sabado4" size="30" /></td>
  118.     </tr>
  119.   <tr>
  120.     <td align="left"><select name="palta12" id="palta12">
  121.       <option value="5 personas">5 personas</option>
  122.     </select></td>
  123.     <td align="center"><input name="b_dom_jueves5" type="text" id="b_dom_jueves5" size="30" /></td>
  124.     <td align="center"><input name="b_viernes_o_sabado5" type="text" id="b_viernes_o_sabado5" size="30" /></td>
  125.     <td colspan="2" align="center"><input name="b_viernes_y_sabado5" type="text" id="b_viernes_y_sabado5" size="30" /></td>
  126.     </tr>
  127.   <tr>
  128.     <td align="left"><select name="palta13" id="palta13">
  129.       <option value="6 personas">6 personas</option>
  130.     </select></td>
  131.     <td align="center"><input name="b_dom_jueves6" type="text" id="b_dom_jueves6" size="30" /></td>
  132.     <td align="center"><input name="b_viernes_o_sabado6" type="text" id="b_viernes_o_sabado6" size="30" /></td>
  133.     <td colspan="2" align="center"><input name="b_viernes_y_sabado6" type="text" id="b_viernes_y_sabado6" size="30" /></td>
  134.     </tr>
  135.   <tr>
  136.     <td align="left"><select name="palta14" id="palta14">
  137.       <option value="7 personas">7 personas</option>
  138.     </select></td>
  139.     <td align="center"><input name="b_dom_jueves7" type="text" id="b_dom_jueves7" size="30" /></td>
  140.     <td align="center"><input name="b_viernes_o_sabado7" type="text" id="b_viernes_o_sabado7" size="30" /></td>
  141.     <td colspan="2" align="center"><input name="b_viernes_y_sabado7" type="text" id="b_viernes_y_sabado7" size="30" /></td>
  142.     </tr>
  143.   <tr>
  144.     <td align="left"><select name="palta15" id="palta15">
  145.       <option value="8 personas">8 personas</option>
  146.     </select></td>
  147.     <td align="center"><input name="b_dom_jueves8" type="text" id="b_dom_jueves8" size="30" /></td>
  148.     <td align="center"><input name="b_viernes_o_sabado8" type="text" id="b_viernes_o_sabado8" size="30" /></td>
  149.     <td colspan="2" align="center"><input name="b_viernes_y_sabado8" type="text" id="b_viernes_y_sabado8" size="30" /></td>
  150.     </tr>
  151. <tr>
  152. <td colspan="7"></td>
  153. </tr>
  154.     <tr>
  155.     <td colspan="2">Tarifa por cama adicional (Bs.)</td>
  156.     <td><input name="cama_adicional" type="text" id="cama_adicional" size="30" /></td>
  157.     <td>Recargo entrega tardía hab. (Bs/hora)</td>
  158.     <td><input name="recargo_tardia" type="text" id="recargo_tardia" size="30" /></td>
  159. </tr>  </table>

Y tengo 2 tablas:

Tabla Tarifas
id_tarifa
id_hotel
cama_adicional
recargo

Tabla Detalle_tarifas
id_detalle
id_tarifa
tipo_hab
dom_jueves
viernes_o_sabado
viernes_y_sabado

En la tabla detalle_tarifas es que tengo guardar los valores de los input text y no me da la cabeza como hacerlo.

Les agradezco su ayuda.
__________________
Caminando con el corazón partío
  #2 (permalink)  
Antiguo 14/02/2012, 08:39
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años
Puntos: 394
Respuesta: Guardar varios valores de input text en una variable

Pues en realidad me dio pereza analizar todo ese codigo HTML pero si quieres asignar todos los valores en una variable, puedes usar un separador como coma, guion, guion bajo y concatenar los resultados:

Código PHP:
Ver original
  1. $variableTotal = $_POST['campo1'].",".$_POST['campo2'].",".$_POST['campoN'];
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #3 (permalink)  
Antiguo 14/02/2012, 08:43
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar varios valores de input text en una variable

Muchas gracias jotaincubus. Lo voy a probar y te comento.
__________________
Caminando con el corazón partío
  #4 (permalink)  
Antiguo 15/02/2012, 10:09
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar varios valores de input text en una variable

Hola lo puse asi:

Código PHP:
Ver original
  1. $cantidad = $_POST['hab_1p_com']."'".$_POST['hab_2p_com']."'".$_POST['hab_3p_com']."'".$_POST['hab_4p_com']."'".$_POST['hab_5p_com']."'".$_POST['hab_6p_com']."'".$_POST['hab_7p_com']."'".$_POST['hab_8p_com'];
  2. $tipo_habitacion_c = $_POST['1p']."'".$_POST['2p']."'".$_POST['3p']."'".$_POST['4p']."'".$_POST['5p']."'".$_POST['6p']."'".$_POST['7p']."'".$_POST['8p'];
  3. $tv = $_POST['tv1']."'".$_POST['tv2']."'".$_POST['tv3']."'".$_POST['tv4']."'".$_POST['tv5']."'".$_POST['tv6']."'".$_POST['tv7']."'".$_POST['tv8'];
  4. $tv_cable_h = $_POST['tvcable1']."'".$_POST['tvcable2']."'".$_POST['tvcable3']."'".$_POST['tvcable4']."'".$_POST['tvcable5']."'".$_POST['tvcable6']."'".$_POST['tvcable7']."'".$_POST['tvcable8'];
  5. $agua_caliente = $_POST['ag_cal1']."'".$_POST['ag_cal2']."'".$_POST['ag_cal3']."'".$_POST['ag_cal4']."'".$_POST['ag_cal5']."'".$_POST['ag_cal6']."'".$_POST['ag_cal7']."'".$_POST['ag_cal8'];
  6. $bano_privado = $_POST['bp1']."'".$_POST['bp2']."'".$_POST['bp3']."'".$_POST['bp4']."'".$_POST['bp5']."'".$_POST['bp6']."'".$_POST['bp7']."'".$_POST['bp8'];
  7. $aire = $_POST['aac1']."'".$_POST['aac2']."'".$_POST['aac3']."'".$_POST['aac4']."'".$_POST['aac5']."'".$_POST['aac6']."'".$_POST['aac7']."'".$_POST['aac8'];
  8. $nevera = $_POST['nev1']."'".$_POST['nev2']."'".$_POST['nev3']."'".$_POST['nev4']."'".$_POST['nev5']."'".$_POST['nev6']."'".$_POST['nev7']."'".$_POST['nev8'];
  9. $otro = $_POST['otro1']."'".$_POST['otro2']."'".$_POST['otro3']."'".$_POST['otro4']."'".$_POST['otro5']."'".$_POST['otro6']."'".$_POST['otro7']."'".$_POST['otro8'];
  10. $disposicion = $_POST['disp_cama1']."'".$_POST['disp_cama2']."'".$_POST['disp_cama3']."'".$_POST['disp_cama4']."'".$_POST['disp_cama5']."'".$_POST['disp_cama6']."'".$_POST['disp_cama7']."'".$_POST['disp_cama8'];
  11.  
  12. $query = "INSERT INTO detalle_habitaciones (id_habitacion, cantidad, tipo_habitacion_c, tv, tv_cable_h, agua_caliente, bano_privado, aire, nevera, otro, disposicion) " .
  13.                 "VALUES ('$id_habitacion','$cantidad', '$tipo_habitacion_c', '$tv', '$tv_cable_h', '$agua_caliente', '$bano_privado', '$aire', '$nevera', '$otro', '$disposicion')";
  14.                 mysql_query($query) or die(mysql_error());

Pero me da este error
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '5'2'3'4'2'2'1', '1 persona'2 personas'3 personas'4 personas'5 personas'6 persona' at line 1"

Será que tengo que usar un for. Pero no se como???
__________________
Caminando con el corazón partío
  #5 (permalink)  
Antiguo 15/02/2012, 10:42
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años
Puntos: 394
Respuesta: Guardar varios valores de input text en una variable

no puedes usar de esa forma el carácter ' (comilla simple) ya que este es usado por PHP... puedes escaparlo pero lo mas recomendable es que uses , (comas) en vez de ' (comillas simples)
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #6 (permalink)  
Antiguo 15/02/2012, 12:27
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar varios valores de input text en una variable

No entiendo. cual de tantas comillas simples que usé?

Tu me indicaste que lo pusiera asi:

Código PHP:
Ver original
  1. $variableTotal = $_POST['campo1'].",".$_POST['campo2'].",".$_POST['campoN'];
__________________
Caminando con el corazón partío
  #7 (permalink)  
Antiguo 15/02/2012, 12:30
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años
Puntos: 394
Respuesta: Guardar varios valores de input text en una variable

En tu codigo vos usas "'", cambia todas esas ' por comas (,)...!
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #8 (permalink)  
Antiguo 15/02/2012, 15:15
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar varios valores de input text en una variable

No funciona bien. No se si fue que no supe explicar pero lo que necesito es que se incluyan en cada fila y se metio todo en la misma columna de la bd. Quedó así:

id_habitacion_detalle id_habitacion cantidad tipo_habitacion_c tv tv_cable_h agua_caliente bano_privado aire nevera otro disposicion
1 2 4 1 persona,2 personas,3 personas,4 personas,5 perso... No Si Si Si Si Si Si,Si,Si,Si,Si,Si,No,Si xy,pp,cc,uu,ii,oo,ll,dd

Por eso digo que se utiliza un for para que vaya pasando por filas en la tabla mysql

????
__________________
Caminando con el corazón partío
  #9 (permalink)  
Antiguo 15/02/2012, 15:23
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años
Puntos: 394
Respuesta: Guardar varios valores de input text en una variable

Queres un registro por cada uno de esos datos ? o cada dato de esos son una columna en la base de datos ?
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #10 (permalink)  
Antiguo 15/02/2012, 15:34
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar varios valores de input text en una variable

En este enlace esta el formulario

http://prowexven.com/vdvacaciones/ad...as/posadas.php

y la tabla de habitaciones (punto 5) por ejemplo tiene los siguientes campos:

id_habitacion_detalle id_habitacion cantidad tipo_habitacion_c tv tv_cable_h agua_caliente bano_privado aire nevera otro disposicion

Entonces el usuario deberá ingresar datos para cada fila
__________________
Caminando con el corazón partío
  #11 (permalink)  
Antiguo 15/02/2012, 15:43
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años
Puntos: 394
Respuesta: Guardar varios valores de input text en una variable

cada uno de esas filas del punto 5 es un registro de la base de datos ?
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #12 (permalink)  
Antiguo 15/02/2012, 15:47
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar varios valores de input text en una variable

en cada insert se debe guardar 10 registros y eso se hace 8 veces (que corresponden a los diferentes tipos de habitaciones)

cantidad, tipo_habitacion_c, tv, tv_cable_h, agua_caliente, bano_privado, aire, nevera, otro, disposicion
__________________
Caminando con el corazón partío
  #13 (permalink)  
Antiguo 15/02/2012, 18:10
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar varios valores de input text en una variable

Después que trabajé tanto, esto está todo mal....

Por favor queria preguntar si para pasar esto en un array debo colocar por ejemplo los input asi:

Código HTML:
Ver original
  1. <input name="cantidad[]" type="text" id="hab_1p_com" size="10" />
  2. <input name="cantidad[]" type="text" id="hab_2p_com" size="10" />
  3. <input name="cantidad[]" type="text" id="hab_3p_com" size="10" />
  4. .....
  5. <input name="cantidad[]" type="text" id="hab_8p_com" size="10" />

Es que siempre me enredo con el tema de los array y guardar en la bd. Me cuesta un mundo
__________________
Caminando con el corazón partío
  #14 (permalink)  
Antiguo 15/02/2012, 19:57
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Guardar varios valores de input text en una variable

Ya lo resolvi. Era usar esto para recuperarlos:

Código PHP:
Ver original
  1. $numRows = count($cantidad);
  2.  
  3.     for($i=0; $i<$numRows; $i++) {
  4.           $sql_ins2 = mysql_query("INSERT INTO detalle_habitaciones (id_habitacion, cantidad, tipo_habitacion_c, tv, tv_cable_h, agua_caliente, bano_privado, aire, nevera, otro, disposicion) VALUES ('5', '".$_POST['cantidad'][$i]."', '".$_POST['tipo_habitacion_c'][$i]."', '".$_POST['tv'][$i]."', '".$_POST['tv_cable_h'][$i]."', '".$_POST['agua_caliente'][$i]."', '".$_POST['bano_privado'][$i]."', '".$_POST['aire'][$i]."','".$_POST['nevera'][$i]."', '".$_POST['otro'][$i]."', '".$_POST['disposicion'][$i]."')") or die ("Error en Insert : ".mysql_error());
  5.     }
__________________
Caminando con el corazón partío

Etiquetas: input, tabla, variables, txt
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 16:18.