SoloCodigo
Bases de Datos => MySQL => Mensaje iniciado por: elcalcetin en Sábado 22 de Noviembre de 2008, 00:25
-
HOLA. DISCULPEN MI IGNORANCIA. SOY NUEVO EN ESTO. ESCRIBÍ UN SCRIP MUY SENCILLO CON SU RESPECTIVO CONECTOR A UNA BASE DE DATOS EN MYSQL Y TODO PARECE ESTAR BIEN, AMBOS SCRIPTS CUANDO LOS CORRO SOBRE EL SERVIDOR, EJECUTAN BIEN Y DICEN QUE LOS DATOS SE CARGARON EN LA BDD, PERO, CUANDO VOY A LA BDD NO HAY NINGÚN REGISTRO, LO HE HECHO UNA Y OTRA VEZ, PERO NO LOGRO INSERTAR DATOS EN UNA BASE DE DATOS ¿ALGUIEN PODRÍA AYUDARME, POR FAVOR? DE ANTE MANO... GRACIAS :ouch:
AQUÍ ESTÁN LOS SCRIPTS:
ESTE ES EL SCRIPT CONECT.PHP
<?php
$Servidor = localhost;
$Usuario = "nombre_usuario";
$Password = "password";
$BaseDeDatos = "nombre_bdd";
$conexion = mysql_connect ($Servidor, $Usuario, $Password) or die ("Error: El servidor no puede conectarse con la base de datos");
$descriptor= mysql_select_db ($BaseDeDatos, $conexion);
?>
ESTE ES EL SCRIPT NUEVOREGISTRO.PHP
<?php
require("conect.php");
$Nombre = "Nombre";
$Apellido = "Apellido";
$Email = "mi@email.com";
$consulta = mysql_query("INSERT INTO contacto ('id', 'nombre', 'apellido', 'email') VALUES ('', '$Nombre', '$Apellido', '$Email');");
if($guardar == mysql_query("$consulta"))
{
echo "se agregaron nuevos datos a la BD";
} else{
echo "error";
}
?>
LES AGRADECERÍA SU AYUDA...
-
Muestra los scripts.
-
Muestra los scripts.
AQUÍ ESTÁN LOS SCRIPTS:
ESTE ES EL SCRIPT CONECT.PHP
<?php
$Servidor = localhost;
$Usuario = "nombre_usuario";
$Password = "password";
$BaseDeDatos = "nombre_bdd";
$conexion = mysql_connect ($Servidor, $Usuario, $Password) or die ("Error: El servidor no puede conectarse con la base de datos");
$descriptor= mysql_select_db ($BaseDeDatos, $conexion);
?>
ESTE ES EL SCRIPT NUEVOREGISTRO.PHP
<?php
require("conect.php");
$Nombre = "Nombre";
$Apellido = "Apellido";
$Email = "mi@email.com";
$consulta = mysql_query("INSERT INTO contacto ('id', 'nombre', 'apellido', 'email') VALUES ('', '$Nombre', '$Apellido', '$Email');");
if($guardar == mysql_query("$consulta"))
{
echo "se agregaron nuevos datos a la BD";
} else{
echo "error";
}
?>
GRACIAS...
-
Ejecutalo de esta forma:
$consulta = mysql_query("INSERT INTO contacto ('id', 'nombre', 'apellido', 'email') VALUES ('', '".$Nombre."', '".$Apellido."', '".$Email."');");
Avisas si te funcionó.
-
Ejecutalo de esta forma:
$consulta = mysql_query("INSERT INTO contacto ('id', 'nombre', 'apellido', 'email') VALUES ('', '".$Nombre."', '".$Apellido."', '".$Email."');");
Avisas si te funcionó.
GRACIAS... PERO NO ME HA FUNCIONADO... QUÉ PUEDE SER...? ALGUNA TONTERÍA BÁSICA QUE ESTOY PASANDO POR ALTO EN EL MOMENTO DE CREAR MI BASE DE DATOS, O ESTOY GUARDANDO LOS SCRIPTS EN UNA CARPETA DONDE NO FUNCIONAN...? :hitcomp:
-
Pues no se mucho de conexion a BD mediante PHP, pero porque insertas una fila con el campo id vacio? quizas ese sea el error.
-
$consulta = mysql_query("INSERT INTO contacto ('id', 'nombre', 'apellido', 'email') VALUES ('', '".$Nombre."', '".$Apellido."', '".$Email."');");
El nombre de los campos no va entrecomillado
$consulta = mysql_query("INSERT INTO contacto (id, nombre, apellido, email) VALUES ('', '".$Nombre."', '".$Apellido."', '".$Email."');");
y si el Id es autonumerico puedes prescindir de el,
$consulta = mysql_query("INSERT INTO contacto ( nombre, apellido, email) VALUES ('".$Nombre."', '".$Apellido."', '".$Email."');");
o enviarlo como NULL
$consulta = mysql_query("INSERT INTO contacto (id, nombre, apellido, email) VALUES (NULL, '".$Nombre."', '".$Apellido."', '".$Email."');");
Tambien puedes mostrar el error que te envia MySQL imprimiendolo :
lugar de
Saludos
-
DE ANTE MANO MUCHAS GRACIAS!!!
POR FIN PUDE INGRESAR DATOS :good:
HABÍA DOS PROBLEMAS BÁSICOS:
1. TUVE QUE CORRER LOS SCRIPTS DESDE UN WRAPPER DE CGI PARA QUE LOS LEYERA MYSQL. EL WRAPPER SE LLAMA SCGI-BIN Y LO CREE DESDE EL CP DEL HOSTING...
2. CODIGO: EN PRINCIPIO TODO QUEDÓ COMO AL PRINCIPIO EXCEPTO LOS NOMBRES DE LOS CAMPOS... DEBEN SER SIN '' COMO ME LO INDICARON... EL CODIGO FINAL QUEDÓ ASÍ:
$consulta = mysql_query("INSERT INTO contacto (id, nombre, apellido, email) VALUES ('', '$Nombre', '$Apellido', '$Email'); ");
ESTÁ FUNCIONANDO A LA PERFECCIÓN GRACIAS POR SU AYUDA.
CUALQUIER DUDA O PREGUNTA ESTOY A SUS ÓRDENES... :good: :comp: :alien:
PD. TAMBIEN INCLUÍ: echo mysql_error();
GRACIAS!!!