hola a todos de antemano gracias por la respuesta. Soy nuevo en php y mysql, y tengo un problema al momento de guardar los datos en mysql, al enviar el formulario no se guardan nada en la base de datos, y tampoco me sale un mensaje si es que ha ocurrido un error, o un mensaje de k se guardaron los datos correctamente. mi sistema operativo en ubuntu 9.04.
bueno podríamos intentar adivinar las 100000000000000001 razones por las que puede pasar eso, o , podrías poner aunque sea parte del código para ahorrar tiempo ;-)
Saludos
aqui les pongo el codigo: se trata de una agenda en php
form_agenda.php
<html>
<head>
<title>Nueva Agenda</title>
<link rel="stylesheet" type="text/css" href="./css/calendar-win2k-1.css" />
<script type="text/javascript" src="./js/calendar.js"></script>
<script type="text/javascript" src="./lang/calendar-es.js"></script>
<script type="text/javascript" src="./js/calendar-setup.js"></script>
</head>
<body>
<h1>Nueva Cita</h1>
<form action="insert_agenda.php" method="post">
<table border="0">
<tr>
<td>Fecha</td>
<td> <input type="text" id="fecha" name="fecha" />
<button id="trigger">...</button>
<!--<input type="text" name="fecha" maxlength="15" size="15"><button id="trigger">...</button>--></td>
</tr>
<tr>
<td>Hora</td>
<td><input type="text" name="hora" maxlength="15" size="15"></td>
</tr>
<tr>
<td>Actividad</td>
<td><textarea name="actividad" cols="30" rows="3"> </textarea> </td>
</tr>
<tr>
<td>Ciudad</td>
<td><input type="text" name="ciudad" maxlength="20" size="15"></td>
</tr>
<tr>
<td>Lugar</td>
<td><input type="text" name="lugar" maxlength="50" size="26"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Grabar"></td>
</tr>
</table>
</form>
<script type="text/javascript">
Calendar.setup(
{
inputField : "fecha", // ID of the input field
ifFormat : "%d-%m-%Y", // the date format
button : "trigger" // ID of the button
}
);
</script>
</body>
</html>
y este es el codigo de envio de formulario:
insert_agenda.php
<html>
<head>
<title>Resultado de Registro</title>
</head>
<body>
<h1>Resultado de Registro</h1>
<?php
// nombre de variables cortos
$fecha = $_POST['fecha'];
$hora = $_POST['hora'];
$actividad = $_POST['actividad'];
$ciudad = $_POST['ciudad'];
$lugar = $_POST['lugar'];
if(!$fecha || !$hora || !$actividad || !$ciudad || !$lugar)
{
echo '..:: No se ha introducido todos los datos requeridos. ::..<br />';
echo '..:: Por favor retroceda y vuelva a intentarlo. ::..';
exit;
}
if(!get_magic_quotes_gpc())
{
$fecha = addslashes($fecha);
$hora = addslashes($hora);
$actividad = addslashes($actividad);
$ciudad = addslashes($ciudad);
$lugar = addslashes($lugar);
}
@$db = new mysqli('localhost', 'root', '******', 'agenda');
extract($_POST);
if(mysqli_connect_errno())
{
echo '..:: Error: No se pudo conectar a la Base de Datos. Por favor intentelo mas tarde ::..';
exit;
}
$query = "insert into agenda values ('".$fecha."', '".$hora."', '".$actividad."', '".$ciudad."', '".$lugar."')";
$result = $db -> query($query);
if($result)
echo $db -> affected_rows. ' Nueva cita guardada en la Agenda.';
$db -> close();
?>
</body>
</html>
Al código php no le veo ningún problema. Quizás deberías comprobar si los datos POST llegan correctamente y son los que tu quieres.
Saludos
La tabla agenda, cuantos campos tiene?, No tiene nungun campo ID?
Como te dijo BadStupidMonkey, deberias imprimir la sentencia SQL que estas generando y mirar:
1. Que los completos esten con datos.
2. Mostrar el String de la consulta y ejecutarla en el motor de base de datos.