He creado una base de datos llamada webdb con una tabla noticias que contiene los campos titulo y contenido
Son dos archivos cuyo código:
form.html
Código:
insertar_datos.php<html><body> <form name="webtaller" action="insertar_datos.php" method="post"> Título: <input type="text" name="titulo"><br> Contenido: <textarea name="contenido"></textarea><br> <input type="submit" value="Envia"> </form> </body></html>
Código:
<?php // Primero comprobamos que ningún campo esté vacío y que todos los campos existan. if(isset($_POST['titulo']) && !empty($_POST['titulo']) && isset($_POST['contenido']) && !empty($_POST['contenido'])) { // Si entramos es que todo se ha realizado correctamente $link = mysql_connect("localhost","ocultoparaelejemplo","ocultoparaelejemplo"); mysql_select_db("webdb",$link); // Con esta sentencia SQL insertaremos los datos en la base de datos mysql_query("INSERT INTO noticias (titulo,contenido) VALUES ('{$_POST['titulo']}','{$_POST['contenido']}')",$link); // Ahora comprobaremos que todo ha ido correctamente $my_error = mysql_error($link); if(!empty($my_error){ echo "Ha habido un error al insertar los valores. $my_error"; } else { echo "Los datos han sido introducidos satisfactoriamente"; } } else { echo "Error, no ha introducido todos los datos"; }else{ echo"que nada que nada"; ?>
Y al final al presionar submit me arroja el siguiente error:
Parse error: parse error, unexpected '{' in C:\Archivos de programa\Apache Group\Apache2\htdocs\insertar_datos.php on line 31.
Comprendo que pueda ser un problema con la llave. Me pregunto si no faltará un elseif en lugar de un else.
Yo he hecho varias pruebas: duplicar las llaves, poner ";", incluso poner el contenido del echo entre parentesis ademas de comillas. En conclusion sigo siempre teniendo el mismo error u otro peor. Agradecería que me ayudaran pues me está costando mucho conectar ningun script a mi base de datos, así que me harían un gran favor.
Gracias.