Foros del Web » Programando para Internet » PHP »

Problema enviando datos del formulario a la BD

Estas en el tema de Problema enviando datos del formulario a la BD en el foro de PHP en Foros del Web. a ver si me podeis echar una mano, resulta que estoy aprendiendo algo de php, y he creado un formulario, el cual en " action ...
  #1 (permalink)  
Antiguo 09/04/2011, 11:36
 
Fecha de Ingreso: junio-2009
Mensajes: 28
Antigüedad: 14 años, 9 meses
Puntos: 0
Problema enviando datos del formulario a la BD

a ver si me podeis echar una mano, resulta que estoy aprendiendo algo de php, y he creado un formulario, el cual en " action " deriva a una pagina llamada procesar.php.

Lo que hay dentro de procesar.php es esto:

Código:
<?php

$marca=$_POST["marca"];
$modelo=$_POST["modelo"];
$precio=$_POST["precio"];
$provincia=$_POST["provincia"];

mysql_connect ("servidor", "usuario", "contraseña");
mysql_select_db ("el nombre de la base");

mysql_query ("INSERT INTO clasificados (marca,modelo,precio,provincia) VALUES ('$marca','$modelo','$precio','$provincia')");

?>

El caso es que cuando reviso la base de datos, veo que se estan grabando los anuncios de prueba, peroooooo, solo se ve el id del anuncio, los demas datos salen en blanco

¿ que puede estar pasando ?

Gracias
  #2 (permalink)  
Antiguo 09/04/2011, 12:00
 
Fecha de Ingreso: septiembre-2008
Ubicación: Manises,Valencia
Mensajes: 114
Antigüedad: 15 años, 6 meses
Puntos: 13
Respuesta: Problema enviando datos del formulario a la BD

Hola emilio,

supongo que lo que has puesto cómo código lo has resumido... si no, habrías de poner algo así:

<?php

$marca=$_POST["marca"];
$modelo=$_POST["modelo"];
$precio=$_POST["precio"];
$provincia=$_POST["provincia"];

$conexion= mysql_connect ("servidor", "usuario", "contraseña");
$enlace =mysql_select_db ("el nombre de la base",$conexion);

$intro_datos ="INSERT INTO clasificados (marca,modelo,precio,provincia) VALUES ('$marca','$modelo','$precio','$provincia')";

$respuesta_intro = mysql_query($intro_datos) or die("no he podido ejecutar el query:\" . $intro_datos . "\"");

/*Lo que pones en el die te lo muestra en pantalla si no se puede ejecutar el INSERT. Te avisa de ello y te muestra el argumento que has intentado pasarle a mysql para ver qué puede haber pasado */
?>
  #3 (permalink)  
Antiguo 09/04/2011, 13:08
 
Fecha de Ingreso: junio-2009
Mensajes: 28
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Problema enviando datos del formulario a la BD

Cita:
Iniciado por fontanares Ver Mensaje
Hola emilio,

supongo que lo que has puesto cómo código lo has resumido... si no, habrías de poner algo así:

<?php

$marca=$_POST["marca"];
$modelo=$_POST["modelo"];
$precio=$_POST["precio"];
$provincia=$_POST["provincia"];

$conexion= mysql_connect ("servidor", "usuario", "contraseña");
$enlace =mysql_select_db ("el nombre de la base",$conexion);

$intro_datos ="INSERT INTO clasificados (marca,modelo,precio,provincia) VALUES ('$marca','$modelo','$precio','$provincia')";

$respuesta_intro = mysql_query($intro_datos) or die("no he podido ejecutar el query:\" . $intro_datos . "\"");

/*Lo que pones en el die te lo muestra en pantalla si no se puede ejecutar el INSERT. Te avisa de ello y te muestra el argumento que has intentado pasarle a mysql para ver qué puede haber pasado */
?>
He probado con tu codigo y funciona, pero sigo con el mismo problema de que se suma un nuevo registro en la base de datos pero vacio, es decir le doy al enviar del formulario, y se envia sin errores aparentes, y se suma un nuevo registro en la base de datos, pero " vacio ".... ¿?¿?¿¿

Pongo una imagen para que se entienda lo que digo:



Alguna idea de que puede pasar????

Última edición por emilio012; 09/04/2011 a las 13:10 Razón: no salio la imagen
  #4 (permalink)  
Antiguo 09/04/2011, 13:52
 
Fecha de Ingreso: abril-2010
Mensajes: 159
Antigüedad: 14 años
Puntos: 11
Respuesta: Problema enviando datos del formulario a la BD

poes a mi me funciona tu codigo.. :D
prueba este ..
Código PHP:
<?php
echo '<form method="post" action="nombre de tu php">
<input type="text" name="marca">
<input type="text" name="modelo">
<input type="text" name="precio">
<input type="text" name="provincia">
<input type="submit" value="envia">
</form>'
;
$marca=$_POST["marca"];
$modelo=$_POST["modelo"];
$precio=$_POST["precio"];
$provincia=$_POST["provincia"];
mysql_connect ("localhost""root""");
mysql_select_db ("test");
mysql_query ("INSERT INTO clasificados (marca,modelo,precio,provincia) VALUES ('$marca','$modelo','$precio','$provincia')");
?>
  #5 (permalink)  
Antiguo 09/04/2011, 19:48
 
Fecha de Ingreso: mayo-2010
Mensajes: 128
Antigüedad: 13 años, 10 meses
Puntos: 13
Respuesta: Problema enviando datos del formulario a la BD

Una cosa, no tendrias que conectar primero a la base da datos y luego asignar las variables?
Es decir, así:

<?php

$conexion= mysql_connect ("servidor", "usuario", "contraseña");
$enlace =mysql_select_db ("el nombre de la base",$conexion);

$marca=$_POST["marca"];
$modelo=$_POST["modelo"];
$precio=$_POST["precio"];
$provincia=$_POST["provincia"];


$intro_datos ="INSERT INTO clasificados (marca,modelo,precio,provincia) VALUES ('$marca','$modelo','$precio','$provincia')";

$respuesta_intro = mysql_query($intro_datos) or die("no he podido ejecutar el query:\" . $intro_datos . "\"");
?>
  #6 (permalink)  
Antiguo 10/04/2011, 02:10
 
Fecha de Ingreso: septiembre-2008
Ubicación: Manises,Valencia
Mensajes: 114
Antigüedad: 15 años, 6 meses
Puntos: 13
Respuesta: Problema enviando datos del formulario a la BD

Mitrofan:

no es necesario asgnar las variables después de la conexión. Una cosa es extraer los datos de la variable $HTTP_POST_VARS y otra conectar con la bd. Lo único que sí tiene que pasar es que ambas cosas más la creación del argumento han de realizarse antes del mysql_query pero da igual el orden.

Emilio:

Supongo que la imagen es de mysqladmin o algo así. Yo no lo uso, prefiero teclear las cosas en "MYSQL comand line client" vamos, en una consola tipo ms-dos.
Prueba a cambiar "mysql_query($intro_datos)" por print($intro_datos).
Copia la salida en la página y pegala en sql aver si te da algún errror, si te dice algo como: "Query OK, 1 row affected, 3 warnings (0.09 sec)" teclea "show warnings" a ver qué te responde.
  #7 (permalink)  
Antiguo 10/04/2011, 02:11
 
Fecha de Ingreso: septiembre-2008
Ubicación: Manises,Valencia
Mensajes: 114
Antigüedad: 15 años, 6 meses
Puntos: 13
Respuesta: Problema enviando datos del formulario a la BD

Mitrofan: da igual el orden...bueno, a extracción de variables tambié ha de hacerse antes de la creació del argumento. No fuí del todo exacto diciendo lo del orden. Siento la incorrección.
  #8 (permalink)  
Antiguo 10/04/2011, 09:25
 
Fecha de Ingreso: junio-2009
Mensajes: 28
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Problema enviando datos del formulario a la BD

ok, gracias por la ayuda

al final si que funciona bien todo, era fallo mio en el formulario pero ya esta solucionado y se graban correctamente los datos

Saludos

Etiquetas: bd, formulario
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 21:24.