Problema con formulario PHP y mysql
Tengo un manual para aprende esto de mysql y php, voy bien por cierto.
Pero mi problema consiste en este código php
<html>
<body>
<?php
// process form
$link = mysql_connect('localhost','user','pass')or die('ERROR EN LA CONECION :'.mysql_error());
mysql_select_db("mybd", $db)or die('ERROR AL ESCOJER LA BD :'.mysql_error());
$sql = "INSERT INTO agenda (nombre, direccion, tele
"VALUES ('$nombre', '$direccion', '$telefono', '$email$result = mysql_query($sql);
echo "¡Gracias! Hemos recibido sus datos.\n";
?>
</body>
</html>
Este archivo es el html
<html>
<body>
<form method="post" action="add_reg.php">
Nombre :<input type="Text" name="nombre"><br>
Dirección:<input type="Text" name="direccion"><br>
Teléfono :<input type="Text" name="telefono"><br>
E-mail :<input type="Text" name="email"><br>
<input type="Submit" name="enviar" value="Aceptar información">
</form>
</body>
</html>
Este es el error que me da
Parse error: syntax error, unexpected T_STRING in C:\AppServ\www\formulario\add_reg.php on line 9
Que me dicen ustedes los expertos?
indendient
Muchísimas gracias Enrique Gonzales tu eres el mejor 10 puntos gracias de verdad funciono a la perfección seguiré estudiando.
enrique_gonzalez
si esto te da error:
$sql = "INSERT INTO agenda (nombre, direccion, telefono, email) VALUES ('$nombre', '$direccion', '$telefono', '$email')");
prueba
$sql = "INSERT INTO agenda (nombre, direccion, telefono, email) VALUES ('".$nombre."', '".$direccion."', '".$telefono."', '".$email."')";
indendient
Maria] muchísimas gracias aunque me da el mismo erro de sintetices no se que hacer le estoy dando cabeza a ver como comprendo esto pero de todas forma si tienes la síntesis correcta por favor posteala para ver los resultados.
muchísimas gracias.
indendient
hola amiagos, gracias por su respuestas.
Adriia no estoy usando la sentencia SELECT.
tengo un ejemplo de dicha sentencian en el manual de novatos y veo que sirve para visualizar los datos dentro de una base de datos
es algo así
$link = mysql_connect('localhost','user','pass')or die('ERROR EN LA MALDITA CONECION :'.mysql_error());
mysql_select_db("mybd", $link)or die('ERROR AL ESCOJER LA BD :'.mysql_error());
$result = mysql_query("SELECT * FROM agenda", $link);
echo "Nombre: ".mysql_result($result, 0, "nombre")."<br>";
echo "Dirección: ".mysql_result($result, 0, "direccion")."<br>";
echo "Teléfono :".mysql_result($result, 0, "telefono")."<br>";
echo "E-Mail :".mysql_result($result, 0, "email")."<br>";
?>
esto funciona perfectamente.
En este caso se esta usando la sentencia INSERT que es para sumar datos a la BD
gracias de todas forma.
maria_ponyhof
Efectivamente, como te comenta adriia has creado una conexión pero luego al seleccionar la base de datos utilizas la variable $db en vez de $link...
Y además tienes errores de sintaxis, en estás dos sentencias:
$sql = "INSERT INTO agenda (nombre, direccion, tele
"VALUES ('$nombre', '$direccion', '$telefono', '$email$result = mysql_query($sql);
Deberías haber puesto algo así:
$sql = "INSERT INTO agenda (nombre, direccion, telefono, email) VALUES ('$nombre', '$direccion', '$telefono', '$email')");
$result = mysql_query($sql);
No sé si te has equivocado al pegarlo pero te faltan paréntesis, las comillas dobles están mal y un punto y coma para terminar la primera sentencia. Además le indicas menos columnas de las que luego pones en los valores.
Un saludo!
adriia
Cuando seleccionas la base de datos, el segundo parámetro es la conexión que has establecido arriba (en tu caso $link).
Mírate esto que seguramente te servirá: http://www.w3schools.com/php/php_mysql_select.asp