Jump to content

Aydua con formulario php mysql


Recommended Posts

Chicos estoy haciendo un formulario, pero no logro hacer que grabe en base de datos, ya probe sin realizar el formualrio, o sea, con solo codigo php e inserta perfecto, pero al hacerlo como formulario no logro hacer que grabe, le pongo el codigo para que orfa me ayuden. e estado mucho rato y aun no logro hacerlo.

 

Formulario html

<html>

<head>

<title>Prueba</title>

</head>

<body>

<h1>Agregar Nuevo dato</h1>

<form action="subir-datos.php" method="post">

<label for="titulo">Titulo</label><br />

<input id="titulo" type="text" name="titulo" value="" /><br /><br />

<button type="submit" name="submit" value="1">Enviar Noticia</button>

</form>

</body>

</html>

 

codigo php que inserta en base de datos

 

<?

 

$conn=mysql_connect("localhost","root"); or die();

 

$huboerror = mysql_select_db("prueba",$conn) or die();

 

 

$query = "INSERT INTO `noticias` (titulo) values ('{$_POST['titulo']}')";

$response = mysql_query($query, $conn);

 

?>

 

script base de datos

 

CREATE TABLE `noticias` (

`Titulo` varchar(30) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin1;

 

 

por fa ayudenme e probado de mil maneras y auh no puedo hacerlo ya mme esta haciendo enojar la tontera

 

saludos y gracias de antemano

Link to comment
Share on other sites

Wenas, mira yo no soy un experto en conexion de BD con MySQL porque tuve que aprenderlo solo y aun cometo algunos errores xD!....

pero encontre un manual aca en chile(Palabra Censurada) (nose si sigue aun) muy bueno que enseñaba una forma muy simple de conectar la BD, crear las Tablas y Guardar los datos...

 

el ejemplo seria el siguiente de acuerdo a tu problema:

 

<html>

<head><title></title>

<body>

todo con respecto a tu formulario creado en html.. seguido colocas el codigo en php

 

<?php

 

// Configura los datos de tu cuenta

$dbhost='localhost';

$dbusername='Nombre Usuario'; (ej: root)

$dbuserpass='Clave de acceso a tu BD '; (ej: duoc)

$dbname='Nombre de la BD general en tu caso supongo que es noticia' (ej: Clinica);

 

 

// Conexión a la base de datos

mysql_connect ($dbhost, $dbusername, $dbuserpass);

 

// Seleccion de la base de datos

mysql_select_db($dbname) or die('Cannot select database');

 

// Creacion de la tabla (puedes elegir otros nombres para los campos)

$query = 'CREATE TABLE EJ: noticia(

id INT NOT NULL AUTO_INCREMENT,

PRIMARY KEY(id),

titulo VARCHAR(30) NOT NULL)';

$result = mysql_query($query);

 

Una vez creada la tabla puedes dejarlo como comentario /* */ y seguimos con el siguiente paso:

 

 

// Preguntaremos si se han enviado ya las variables necesarias

if (isset($_POST["titulo"])) {

$titulo = $_POST["titulo"];

 

// Hay campos en blanco

if($titulo==NULL) {

echo "faltan campos por llenar.";

}else{

echo "";

 

//Todo parece correcto procedemos con la inserccion

$query = "INSERT INTO noticia (titulo) VALUES('$titulo')";

mysql_query($query) or die(mysql_error());

echo "Los datos han sido guardados correctamente.";

}

}

?>

</body>

</html>

 

 

Bueno espero que te sirva lo encontre bastante sencillo y me ayudo mucho, espero que para ti sea igual..

 

Saludos y suerte. :)

Link to comment
Share on other sites

  • 2 weeks later...

$query = "INSERT INTO `noticias` (titulo) values ('{$_POST['titulo']}')";

 

 

Creo que ese es el error.

 

Estan entre llaves, asi no reconocera la variable.

 

Yo por lo menos cuando tengo que realizar este tipo de aplicaciones primero guardo el valor de $_POST en otra variable

EJ:

 

$titulo=$_POST['titulo'];

 

$query = "INSERT INTO `noticias` (titulo) values ('$titulo')";

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...