SoloCodigo

Bases de Datos => MySQL => Mensaje iniciado por: elcalcetin en Sábado 22 de Noviembre de 2008, 00:25

Título: Script no ingresa datos a Mysql
Publicado 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...
Título: Re: Script no ingresa datos a Mysql
Publicado por: RadicalEd en Sábado 22 de Noviembre de 2008, 14:26
Muestra los scripts.
Título: Re: Script no ingresa datos a Mysql
Publicado por: elcalcetin en Martes 25 de Noviembre de 2008, 16:33
Cita de: "Edo"
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...
Título: Re: Script no ingresa datos a Mysql
Publicado por: RadicalEd en Martes 25 de Noviembre de 2008, 17:53
Ejecutalo de esta forma:
Código: PHP
  1. $consulta = mysql_query("INSERT INTO contacto ('id', 'nombre', 'apellido', 'email') VALUES ('', '".$Nombre."', '".$Apellido."', '".$Email."');");
  2.  
Avisas si te funcionó.
Título: Re: Script no ingresa datos a Mysql
Publicado por: elcalcetin en Miércoles 26 de Noviembre de 2008, 17:29
Cita de: "Edo"
Ejecutalo de esta forma:
Código: PHP
  1. $consulta = mysql_query("INSERT INTO contacto ('id', 'nombre', 'apellido', 'email') VALUES ('', '".$Nombre."', '".$Apellido."', '".$Email."');");
  2.  
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:
Título: Re: Script no ingresa datos a Mysql
Publicado por: ProfesorX en Miércoles 26 de Noviembre de 2008, 18:14
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.
Título: Re: Script no ingresa datos a Mysql
Publicado por: F_Tanori en Miércoles 26 de Noviembre de 2008, 20:22
Código: PHP
  1. $consulta = mysql_query("INSERT INTO contacto ('id', 'nombre', 'apellido', 'email') VALUES ('', '".$Nombre."', '".$Apellido."', '".$Email."');");
  2.  

El nombre de los campos no va entrecomillado

Código: PHP
  1. $consulta = mysql_query("INSERT INTO contacto (id, nombre, apellido, email) VALUES ('', '".$Nombre."', '".$Apellido."', '".$Email."');");
  2.  

y si el Id es autonumerico  puedes prescindir de el,

Código: PHP
  1. $consulta = mysql_query("INSERT INTO contacto ( nombre, apellido, email) VALUES ('".$Nombre."', '".$Apellido."', '".$Email."');");
  2.  

o enviarlo como NULL

Código: PHP
  1. $consulta = mysql_query("INSERT INTO contacto (id, nombre, apellido, email) VALUES (NULL, '".$Nombre."', '".$Apellido."', '".$Email."');");
  2.  

Tambien puedes mostrar el error que te envia MySQL imprimiendolo :


Código: PHP
  1. echo mysql_error();
  2.  

lugar de

Código: PHP
  1.  
  2. else{
  3. echo "error";
  4. }
  5.  
  6.  


Saludos
Título: Re: Script no ingresa datos a Mysql
Publicado por: elcalcetin en Jueves 27 de Noviembre de 2008, 18:21
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!!!