Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/11/2008, 19:27
Avatar de Basteri
Basteri
 
Fecha de Ingreso: noviembre-2008
Mensajes: 30
Antigüedad: 15 años, 6 meses
Puntos: 0
Problema con sistema de comentarios usando php y Mysql

Hola buenas tardes a todos en este foro. Mi problema es el siguiente estoy tratando de hacer un sistema de comentarios para mi web pero por el momento practico en mi servidor local. Este sistema esta conformado por 3 archivos

1 comentarios.php (el cual contiene el formulario)
2 conect.inc (el cual contiene los datos de coneccion a la base de datos)
3 insercomentario.php (el cual contiene el script para insertar los datos en la bd)

Al parecer todo funciona bien , no me manda ningun error pero el problema es que no ingresa ningun dato a la bd deja los espacios en blanco.

Las especificaciones de mi base de datos y de mi tabla son los siguientes:

BD comentar
TABLE comentariosale
ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
nombre TEXT
email TEXT
comentario TEXT

Asi es como queda la base de datos despues de enviar los datos desde el formulario:


Y este es el codigo de los archivos respectivamente:

1- comentarios.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<h1>Insertar Comentario</h1>
<form action="insercomentario.php"><table>
<tr>
<td>Nombre:</td>
<td><input type="text" name="nombre" /></td>
</tr>
<tr>
<td>E-mail</td>
<td><input type="text" name="email" /></td>
</tr>
<tr>
<td>Comentraio:</td>
<td><textarea name="comentario"></textarea></td>
</tr>
<tr>
<td><input type="submit" name="accion" value="Comentar"></td>
<td></td>
</tr>
</table></form>
<table>
<tr>
<td width="80%"><h3>Comentarios a mi sitio</h3>
<?php include('includes/conect.inc'); ?>
</td>
</tr>
</table>
</body>
</html>

2- conect.inc

<?php
$bdconex = @mysql_connect("localhost", "root", "exin");
if (!$bdconex) {
echo( "<h1>La base de datos no está disponible</h1> " .
"<p>Por si acaso, comprueba que tienes bien los datos de la dirección, el nombre de usuario y la contraseña.</p>" );
exit();
}
if (! @mysql_select_db("comentar", $bdconex)){
echo "<h2 align='center'>ERROR3: Imposible localizar la base de datos en este momento</h2>";
exit();
}
?>
<?php

$resultado = @mysql_query("SELECT * FROM comentariosale");
if (!$resultado) {
echo ("<p> Me temo que te has colado en la query:" . mysql_error() . "</p>");
exit();
}
while ($fila = mysql_fetch_array($resultado)) {

echo ("<strong>Nombre: </STRONG>" . $fila['nombre'] . "<br />");
echo ("<strong>E-mail: </STRONG>" . $fila['email'] . "<br />");
echo ("<strong>Comentario:</strong>" . $fila['comentario'] . "<br/><br/>");
?>

<?php } ?>

3- insercomentario.php

<?php
$bdconex = @mysql_connect("localhost", "root", "exin");
if (!$bdconex) {
echo ( "<h1>La base de datos no está disponible</h1> " .
"<p>Por si acaso, comprueba que tienes bien los datos de la dirección, el nombre de usuario y la contraseña.</p>" );
exit();
}else {
echo ("ole que funciona");
}
if (! @mysql_select_db("comentar", $bdconex)){

echo "<h2 align='center'>ERROR3: Imposible localizar la base de datos en este momento</h2>";

exit();
}else {
echo "Base de datos seleccionada";
}

$sql =" INSERT INTO comentariosale ( nombre , email , comentario ) VALUES ( '$nombre' , '$email' , '$comentario' )";

if(mysql_query($sql, $bdconex)){
echo ("<p> Gracias por tu comentario!</p>");
}else{
echo ("Error al insertar los datos: " . mysql_error() . "</p>");
}

?>


Espero me puedan ayudar no soy experto en php ni en mysql la verdad apenas estoy aprendiendo y he tratado de ser lo mas claro posible.

PD. El servidor que uso es xampp 1.6.3
PHP Version 4.4.7
Gracias de antemano