| |||
Perdida de datos método POST Buenas tardes a todos y muchas gracias de antemano. Tengo el siguiente problema. Tengo un formulario con varias etiquetas SELECT. Cuando le pulso al botón enviar y recojo los valores del formulario en el mismo fichero .php y los presento, los datos del select seleccionado aparecen hasta que se encuentra el primer carácter en blanco. No se si me he explicado. Si en el SELECT selecciono, por ejemplo, "Castilla la Mancha" y le pulso a enviar, a continuación la parte del código que se encarga de recoger el dato con el método POST presenta solamente "Castilla"; pierde todo lo demás. Creo que es una tontería, pero no doy con ello. He estado buscando en google y no hay manera. Alguien me puede ayudar por favor? Muchas gracias |
| |||
Respuesta: Perdida de datos método POST Primero de todo muchas gracias por responder. Comentarte que ahora mismo no puedo acceder al código. Mañana a primera hora podré pegarlo. Puedes echarme una mano mañana, por favor? Gracias |
| ||||
Respuesta: Perdida de datos método POST Pues en teoria puede ser que no tengas entre comillas los valores del select: // mal:
Código html:
Ver original // bien
Código html:
Ver original Tema trasladado desde PHP |
| |||
Respuesta: Perdida de datos método POST El código que utilizo para rellenar el combo es el siguiente: Nivel del idioma*: <select name="Nivel" id="Nivel"> <?php //require ("Cart.php"); /* Lista de Niveles de Idiomas */ $resulta=mysql_query("SELECT nivel FROM nivelesidiomas"); /*if (!$resulta) { die('Invalid query: ' . mysql_error()); }*/ while ($row = mysql_fetch_row($resulta)) { echo "<option value=".$row[0].">".$row[0]."</option>"; } ?> </select> Leo los datos de una BD y los presento. Luego en la segunda parte del fichero php hago lo siguiente: Nivel del idioma*: <select name="Nivel" id="Nivel"> <?php //require ("Cart.php"); /* Lista de Niveles de Idiomas */ $resulta=mysql_query("SELECT nivel FROM nivelesidiomas"); /*if (!$resulta) { die('Invalid query: ' . mysql_error()); }*/ while ($row = mysql_fetch_row($resulta)) { if ($_POST['Nivel'] == $row[0] ) { echo "<option value=".$row[0]." selected>".$row[0]."</option>"; } else { echo "<option value=".$row[0].">".$row[0]."</option>"; } } ?> para no perder la referencia del valor seleccionado. Probablemente tenga algún fallo en alguna parte de estos dos bucles while. Muchas gracias de nuevo por vuestro interés y ayuda. Saludos </select> |
| |||
Respuesta: Perdida de datos método POST El código que utilizo para rellenar el combo es el siguiente: Nivel del idioma*: <select name="Nivel" id="Nivel"> <?php //require ("Cart.php"); /* Lista de Niveles de Idiomas */ $resulta=mysql_query("SELECT nivel FROM nivelesidiomas"); /*if (!$resulta) { die('Invalid query: ' . mysql_error()); }*/ while ($row = mysql_fetch_row($resulta)) { echo "<option value=".$row[0].">".$row[0]."</option>"; } ?> </select> Leo los datos de una BD y los presento. Luego en la segunda parte del fichero php hago lo siguiente: Nivel del idioma*: <select name="Nivel" id="Nivel"> <?php //require ("Cart.php"); /* Lista de Niveles de Idiomas */ $resulta=mysql_query("SELECT nivel FROM nivelesidiomas"); /*if (!$resulta) { die('Invalid query: ' . mysql_error()); }*/ while ($row = mysql_fetch_row($resulta)) { if ($_POST['Nivel'] == $row[0] ) { echo "<option value=".$row[0]." selected>".$row[0]."</option>"; } else { echo "<option value=".$row[0].">".$row[0]."</option>"; } } ?> </select> para no perder la referencia del valor seleccionado. Probablemente tenga algún fallo en alguna parte de estos dos bucles while. Muchas gracias de nuevo por vuestro interés y ayuda. Saludos |
| |||
Respuesta: Perdida de datos método POST Muchas gracias a todos y principalmente a buzu. Exactamente, añadiendo la comilla simple funciona perfectamente¡¡¡ Me has hecho un gran favor. Ayer estuve un montón de tiempo para solucionarlo y ni de coña me hubiera dado cuenta de ese detalle. Gracias Saludos |