Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

No se añade el combobox a la BBDD

Estas en el tema de No se añade el combobox a la BBDD en el foro de Mysql en Foros del Web. Hola, Tengo un formulario bastante simple y lo unico que me falla es a la hora de insertar el combobox ya que lo unico que ...
  #1 (permalink)  
Antiguo 08/11/2009, 05:39
 
Fecha de Ingreso: noviembre-2009
Mensajes: 13
Antigüedad: 14 años, 5 meses
Puntos: 0
No se añade el combobox a la BBDD

Hola,

Tengo un formulario bastante simple y lo unico que me falla es a la hora de insertar el combobox ya que lo unico que agrega a la base de datos es el nombre que le he dado que es acti (de actividad).

Aqui tengo el codigo a ver si alguien me pudiese ayudar que es lo que tengo mal.

FORMULARIO
======================

<html>
<head>
<title>Formulario</title>
</head>
<body>
<H1 align="center">Formulario Base de datos prueba</H1>
<FORM ACTION="procesar.php">
<div align="center">
<TABLE>
<TR>
<TD>Nombre:</TD>
<TD><INPUT TYPE="text" NAME="nombre" SIZE="30" MAXLENGTH="30"></TD>
</TR>
<TR>
<TD>Apellidos:</TD>
<TD><INPUT TYPE="text" NAME="apellidos" SIZE="30" MAXLENGTH="60"></TD>
</TR>
<TR>
<TD>Dirección:</TD>
<TD><INPUT TYPE="text" NAME="direc" SIZE="30" MAXLENGTH="90"></TD>
</TR>
<TR>
<TD>Teléfono:</TD>
<TD><INPUT TYPE="text" NAME="tel" SIZE="30" MAXLENGTH="9"></TD>
</TR>
<TR>
<TD>Email:</TD>
<TD><INPUT TYPE="text" NAME="mail" SIZE="30" MAXLENGTH="50"></TD>
</TR>
<TR>
<TD>Actividad:</TD>
<TD><select name="act select">
<option value="Option 1" selected>Tenis</option>
<option value="Option 2">Padel</option>
<option value="Option 3">Gimnasio</option>
</select></TD>
</TR>

</TABLE>
</div>
<div align="center">
<p>&nbsp;</p>
<p>
<INPUT TYPE="submit" NAME="accion" VALUE="Grabar">
</p>
</div>
</FORM>
<hr>
</body>
</html>

CODIGO QUE INSERTA EN LA BASE DATOS MYSQL
=============================================
<?php
include("conexion.php");
$link=Conectarse();
$nombre=$_GET['nombre'];
$apellidos=$_GET['apellidos'];
$direc=$_GET['direc'];
$tel=$_GET['tel'];
$mail=$_GET['mail'];
$acti=$_GET['act select'];
}


mysql_query("insert into datos (nombre,apellidos,direc,tel,mail,acti) values ('$nombre', '$apellidos', '$direc', '$tel', '$mail', 'acti')",$link);

header("Location: form2.php");
?>


CODIGO QUE MUESTRA LA SELECCION
===============================
<?php
function todos()
{
include("conexion.php");
$link=Conectarse();
$result=mysql_query("select nombre,apellidos,direc,tel,mail,acti from datos",$link);

?>
<TABLE BORDER=1 CELLSPACING=5 CELLPADDING=5>

<tr>
<th>Nombre</th><th>Apellidos</th><th>Dirección</th><th>Teléfono</th><th>Email</th><th>Actividad</th>
</tr>

<?php

while($row = mysql_fetch_array($result)) {
printf("<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%a</td></tr>",$row["nombre"],$row["apellidos"],$row["direc"],$row["tel"],$row["mail"],$row["acti"]);
}
mysql_free_result($result);
mysql_close($link);
}
?>


El problema es que a la hora de ver mi consulta pues muestra acti en vez de tenis,padel,gimnasio ....

Muchas gracias.
  #2 (permalink)  
Antiguo 08/11/2009, 06:23
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: No se añade el combobox a la BBDD

Por un lado, el problema es simple si tienes en cuenta que el resto de los datos que recibes está bien, pero no la actividad. Evidentemente, el problema está en el INSERT.
SI te fijas bien, en todos los valores estás poniendo la variable... menos en la actividad. Allí estás poniendo 'acti', lo que significa que estás pidiendo que ponga la cadena de texto "acti" y no una variable denominada $acti...

Por otro lado, recuerda que en el Foro de Base de Datos, no se permite poner código de programación, no importa si es PHP, C#, ASP, HTML o lo que fuere.
Resulta dificultoso de entender, y tiende a esconder los problemas ya que no nos permite saber si el error está en la aplicación (tema de otros foros), el SQL (tema de este foro), o en las variables (cuyo valor en este contexto es desconocido).

Postea sólo el SQL.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 08/11/2009, 06:40
 
Fecha de Ingreso: noviembre-2009
Mensajes: 13
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: No se añade el combobox a la BBDD

Gracias por decirme lo de $ y perdona no sabia como tenia que postear para verificar donde estaba el error, por otra parte te comento ahora mismo no me inserta ni el campo acti solamente esta en blanco ese campo.

No se como arreglarlo la verdad soy una chica que ha empezado y bueno me leido bastantes ejemplos y no consigo dar con esto que es muy simple, ya que aun no he puesto el campo fecha para mas tarde poder enviar un mail cuando sea su cumpleaños.

De momento te agradeceria que me pudieras ayudar a que no inserta nada ahora ya he cambiado en el INSERT el $.

Muchas gracias.
  #4 (permalink)  
Antiguo 08/11/2009, 07:16
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: No se añade el combobox a la BBDD

Cita:
no me inserta ni el campo acti solamente esta en blanco ese campo.
Si el campo es numérico, entonces está produciendo un error de entrada y el dato no se almacena. Si fuese un campo de tipo CHAR o VARCHAR, debería almacenarse al menos "acti".
¿Podrías postear la estructura de esa tabla? Me refiero al CREATE TABLE que le da origen.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 08/11/2009, 07:43
 
Fecha de Ingreso: noviembre-2009
Mensajes: 13
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: No se añade el combobox a la BBDD

Si es el siguiente codigo :

CREATE TABLE `datos` (
`nombre` varchar(20) character set utf8 collate utf8_spanish_ci NOT NULL default '',
`apellidos` varchar(60) character set utf8 collate utf8_spanish_ci NOT NULL,
`fecha` date NOT NULL default '0000-00-00',
`direc` varchar(90) character set utf8 collate utf8_spanish_ci NOT NULL,
`tel` varchar(9) character set utf8 collate utf8_spanish_ci NOT NULL,
`mail` varchar(60) character set utf8 collate utf8_spanish_ci NOT NULL,
`acti` varchar(15) collate latin1_spanish_ci NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_spanish_ci;

Muchas gracias por ayudarme.
  #6 (permalink)  
Antiguo 08/11/2009, 09:02
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: No se añade el combobox a la BBDD

No hay ningún defecto que yo pueda percibir ni en la estructura de la tabla, ni en las sentencias de inserción.
Es posible que haya algún defecto formal en el HTML o en el PHP, pero no es algo que yo maneje demasiado bien como para afirmarlo. Algún detalle me presenta ciertas dudas, como el hecho que un objeto SELECT OPTION pueda tener un atributo NAME conformado por un string con un espacio intermedio. No lo he probado, así que no sé si realmente es válido; si no lo fuera, el objeto referido en el _GET sería nulo y podría explicar porqué no se lee la opción, pero como ya dije, no es mi área.
Con respecto a la sentencia de inserción, si los restantes valores se están recuperando, entonces el problema está en el contenido de la variable antes del INSERT. Yo podría algún echo que me permitiese saber si la variable está llegando correctamente cargada.
Si los restantes valores se recuperan, entonces por alguna razón la variable está llegando con un caracter vacío y como eso no es un NULL, el registro se inserta.

Verifica que las variables estén llegando llenas.

Cualquier otra duda con el PHP o el HTML te recomiendo postearlo en el Foro de PHP, donde te podrán ayudar mejor, porque en lo referente a SQL, no hay defectos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 08/11/2009, 09:46
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: No se añade el combobox a la BBDD

Sigue en:
http://www.forosdelweb.com/f18/no-an...x-bbdd-751386/

Saludos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 12:17.