Foros del Web » Programando para Internet » PHP »

no guarda enla base de datos

Estas en el tema de no guarda enla base de datos en el foro de PHP en Foros del Web. esta bien este scrip ya que no me funciona <html> <head> <title>Resultado de la insercion</title> </head> <body> <h2>Resultado de la insercion</h2> <?php $Nombre2=addslashes($Nombre); $Tel_particular2=addslashes($Tel_particular); $Tel_oficina2=addslashes($Tel_oficina); ...

  #1 (permalink)  
Antiguo 21/05/2004, 13:51
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
no guarda enla base de datos

esta bien este scrip ya que no me funciona

<html>
<head>
<title>Resultado de la insercion</title>
</head>
<body>
<h2>Resultado de la insercion</h2>

<?php
$Nombre2=addslashes($Nombre);
$Tel_particular2=addslashes($Tel_particular);
$Tel_oficina2=addslashes($Tel_oficina);
$Tel_celular2=addslashes($Tel_celular);
$Direccion2=addslashes($Direccion);
$Ciudad2=addslashes($Ciudad);

$link = mysql_select_db("telefonos",$link);
$link = mysql_connect("localhost","root","") or die ("No puedo conectar a
la base de datos");
$result = mysql_query($sql,$link);
$sql = "INSERT INTO listado (Nombre,Tel_particular,Tel_oficina,Tel_celular,Dom icilio
,Ciudad) VALUES ('".$Nombre2."','".$Tel_particular2."','".$Tel_ofi cina2."','".$Tel_celular2."'
,'".$Domicilio2."','".$Ciudad2."');";


?>

<p>
<a href=insercion.html>Agregar Nuevo Registro</a>
<p>

<a href=telefonos.html>Regresar al Menu Telefonos</a>
</body>

</html>
  #2 (permalink)  
Antiguo 21/05/2004, 14:34
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
Creo que tienes el insert mal escrito.. haz la prueba asi


Código PHP:
$sql "INSERT INTO listado (Nombre,Tel_particular,Tel_oficina,Tel_celular,Domicilio,Ciudad) VALUES ('$Nombre2','$Tel_particular2','$Tel_oficina2','$Tel_celular2','$Domicilio2','$Ciudad2')";
$result mysql_query($sql,$link); 
los valores de las variables del value van solo con comilla simple, sin puntos de concatenación ni las comillas dobles.. mira a ver si asi te funciona...
  #3 (permalink)  
Antiguo 21/05/2004, 14:40
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
no se donde esta la bronca..
segun ya me grabo en la base de datos pero la consulto y no esta nada de datos
__________________
mi correo [email protected]
  #4 (permalink)  
Antiguo 21/05/2004, 15:22
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
cambiaste el orden? primero el sql y luego si el mysql_query?? y tambien miraste lo de las comillas??...

mira este debe ser el orden logico

Código PHP:
$link mysql_connect("localhost","root","") or die ("No puedo conectar a
la base de datos"
);
$link mysql_select_db("telefonos",$link);
$sql 
$result mysql_query($sql,$link); 
primero te conectas.. luego selecciones la base de datos.. haces el sql y luego el mysql_query

Última edición por Salome; 21/05/2004 a las 15:26
  #5 (permalink)  
Antiguo 21/05/2004, 15:27
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
me da este error:
Resultado de la insercion

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in c:\phpdev\www\public\insercion.php on line 21

Agregar Nuevo Registro

Regresar al Menu Telefonos
__________________
mi correo [email protected]
  #6 (permalink)  
Antiguo 21/05/2004, 15:34
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
cual es tu linea 21???


intenta esta función asi..

Código PHP:
function conectarse()
{
   if (!(
$link=mysql_connect("localhost","root","")))
   {
      echo 
"Error conectando a la base de datos.";
      exit();
   }
   if (!
mysql_select_db("telefonos",$link))
   {
     echo 
"Error seleccionando la base de datos.";
     exit();
   }
   return 
$link;

y cuando haces ya el insert haces lo siguiente...

Código PHP:
$linkconectarse();
mysql_query ("INSERT INTO listado  (Nombre,Tel_particular,Tel_oficina,Tel_celular,Domicilio,Ciudad) VALUES  ('$Nombre2','$Tel_particular2','$Tel_oficina2','$Tel_celular2','$Domicilio2','$Ciudad2')",$link); 
con la funcion conectarse.. pues te conectas a la base de datos.. y verifica que se pueda conectar y que la base de datos exista... llamo la funcion con la variable $link y ahi me devuelve todo la coenxión...

mira a ver si asi te funciona.. ciao..

Última edición por Salome; 21/05/2004 a las 15:47
  #7 (permalink)  
Antiguo 21/05/2004, 15:38
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
no entiendo quieres que lo haga en una nueva forma y correrla..?
__________________
mi correo [email protected]
  #8 (permalink)  
Antiguo 21/05/2004, 15:43
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
marca error..
$sql = ("INSERT INTO listado (Nombre,Tel_particular,Tel_oficina,Tel_celular,Dom icilio,Ciudad) VALUES ('$Nombre2','$Tel_particular2','$Tel_oficina2','$T el_celular2','$Domicilio2','$Ciudad2')",$link);
__________________
mi correo [email protected]
  #9 (permalink)  
Antiguo 21/05/2004, 15:45
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
no tenes necesidad de hacerlo en una nueva forma... podes dejarla ahi si queres... o crear solo un script de conexion con esa función...

así haces el insert...

Código PHP:
$linkconectarse();
mysql_query ("INSERT INTO listado   (Nombre,Tel_particular,Tel_oficina,Tel_celular,Domicilio,Ciudad) VALUES   ('$Nombre2','$Tel_particular2','$Tel_oficina2','$Tel_celular2','$Domicilio2','$Ciudad2')",$link); 

Última edición por Salome; 21/05/2004 a las 15:48
  #10 (permalink)  
Antiguo 21/05/2004, 15:49
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
me sigue marcando error en:
$sql = ("INSERT INTO listado (Nombre,Tel_particular,Tel_oficina,Tel_celular,Dom icilio,Ciudad) VALUES ('$Nombre2','$Tel_particular2','$Tel_oficina2','$T el_celular2','$Domicilio2','$Ciudad2')",$link);
__________________
mi correo [email protected]
  #11 (permalink)  
Antiguo 21/05/2004, 15:51
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
es que no es:

$sql = ("INSERT INTO listado (Nombre,Tel_particular,Tel_oficina,Tel_celular,Dom
icilio,Ciudad) VALUES ('$Nombre2','$Tel_particular2','$Tel_oficina2','$T
el_celular2','$Domicilio2','$Ciudad2')",$link);


la función mysql_query... pues usandola asi como la función de conexion que te envie... ahora si te funciona??

Código PHP:
$linkconectarse();
mysql_query ("INSERT INTO listado    (Nombre,Tel_particular,Tel_oficina,Tel_celular,Domicilio,Ciudad) VALUES    ('$Nombre2','$Tel_particular2','$Tel_oficina2','$Tel_celular2','$Domicilio2','$Ciudad2')",$link); 

Última edición por Salome; 21/05/2004 a las 15:54
  #12 (permalink)  
Antiguo 21/05/2004, 16:00
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
fijate que se crea un campo pero en blanco..
porque?
__________________
mi correo [email protected]
  #13 (permalink)  
Antiguo 21/05/2004, 16:05
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
que campo se crea en blanco.. porque pues según veo estas llevando todos los valores....pero como los recoges.. de que form los tomas??.. porque ya te ingresa bien cierto?.. pues ya al menos te lleva información?
  #14 (permalink)  
Antiguo 21/05/2004, 16:08
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
mira se supone que en una pagina html esta el formulario para rellenar que es este:
<html>

<head>

<title>Formulario de insercion de telefonos</title>

</head>

<body bgcolor="#008080">

<h2>Formulario de Insercion Telefonico</h2>

<form action="insercion.php" method="post">
Nombre:<input type="text" name="nombre" MAXLENGTH=50 SIZE=50><br>
Tel_casa:<input type="text" name="tel_casa" MAXLENGTH=15 SIZE=15><br>
Tel_trabajo:<input type="text" name="tel_trabajo" MAXLENGTH=15 SIZE=15><br>
Tel_celular:<input type="text" name="tel_celular" MAXLENGTH=15 SIZE=15><br>
Domicilio:<input type="text" name="Domicilio" MAXLENGTH=80 SIZE=80><br>
Ciudad:<input type="text" name="Ciudad" MAXLENGTH=12 SIZE=12><br>
<input type="submit" VALUE="Insertar">

</form>

</body>

</html>

y de aqui se pasan los datos a la base de datos, no..se abre la pagina insercion.php y me dice que los datos se guardaron..

pero cuandolo consulto por el phpadmin solo hay campos en blanco, todos los datos estan en blanco solo se agrego un campo mas o una fila
__________________
mi correo [email protected]
  #15 (permalink)  
Antiguo 21/05/2004, 16:15
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
mmm mira tenes que observar mejor... mira los nombres que les das a tus variables...

<form action="insercion.php" method="post">
Nombre:<input type="text" name="nombre " MAXLENGTH=50 SIZE=50><br>
Tel_casa:<input type="text" name="tel_casa " MAXLENGTH=15 SIZE=15><br>
Tel_trabajo:<input type="text" name="tel_trabajo " MAXLENGTH=15 SIZE=15><br>
Tel_celular:<input type="text" name="tel_celular " MAXLENGTH=15 SIZE=15><br>
Domicilio:<input type="text" name="Domicilio " MAXLENGTH=80 SIZE=80><br>
Ciudad:<input type="text" name="Ciudad " MAXLENGTH=12 SIZE=12><br>
<input type="submit" VALUE="Insertar">
</form>

y estos son los que supuestamente recoges en el script

$Nombre2=addslashes($Nombre);
$Tel_particular2=addslashes($Tel_particular);
$Tel_oficina2=addslashes($Tel_oficina);
$Tel_celular2=addslashes($Tel_celular);
$Direccion2=addslashes($Direccion);
$Ciudad2=addslashes($Ciudad);

en el formulario tenes nombre y en el script Nombre
tenes tel_casa en el formulario y en script Tel_particular

las variables deben llamarse igual... por ejemplo
Código PHP:
$Nombre2=addslashes($nombre);
$Tel_particular2=addslashes($tel_casa); 
mmmm mira a ver si ahora si.. corregis los nombres de las variables y si no es eso.. pues contas de nuevo a ver en que se te ayuda.. un saludo...

Última edición por Salome; 21/05/2004 a las 16:17
  #16 (permalink)  
Antiguo 21/05/2004, 16:28
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
pero si es un documento html no entra el signo de $ no.....
__________________
mi correo [email protected]
  #17 (permalink)  
Antiguo 21/05/2004, 16:33
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
mmmm a ver te explico de manera que me entendas...

el signo de pesos si es un documento html no te entra.. se la el nombre a la variable con name = "nombre_variable" pero cuando lo vas a recibir en un script por asi decirlo, ahi si ese nombre de variable html es tomado con el signo $ asi $nombre_variable porque para definir una variable en php se hace con el signo $ (pesos)...

lo que te digo es que el nombre de las variables que envias desde el formulario al script no son las mismas que estas ingresando.. tenes n ombre y recibis $N ombre mira que tenes nombre todo en minúscula y Nombre en mayúscula inicial... si me entendes??
  #18 (permalink)  
Antiguo 21/05/2004, 16:39
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
YA HICE EL CAMBIO PERO NO.. sigue creando un campo en la base de datos pero no se ve la informacion..
__________________
mi correo [email protected]
  #19 (permalink)  
Antiguo 21/05/2004, 16:41
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
un campo o todos los campos???
  #20 (permalink)  
Antiguo 21/05/2004, 16:42
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
osea se crea una linea con todos los campos pero estan vacias, no se ven los datos agregados
__________________
mi correo [email protected]
  #21 (permalink)  
Antiguo 21/05/2004, 16:45
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
ok, entonces hagamos algo.. pon todo el código... el form desde donde envias la información y el resto de donde la recibis... con nombres y todo tal cual lo tenes ahora .. ok y asi miramos que pasa...
  #22 (permalink)  
Antiguo 21/05/2004, 16:48
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
quieres ver los codigos....
__________________
mi correo [email protected]
  #23 (permalink)  
Antiguo 21/05/2004, 16:49
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
se supone que este es el form

<html>

<head>

<title>Formulario de insercion de telefonos</title>

</head>

<body bgcolor="#008080">

<h2>Formulario de Insercion Telefonico</h2>

<form action="insercion.php" method="post">
Nombre:<input type="text" name="Nombre" MAXLENGTH=80 SIZE=80><br>
Tel_particulat:<input type="text" name="Tel_particular" MAXLENGTH=15 SIZE=15><br>
Tel_oficina:<input type="text" name="Tel_oficina" MAXLENGTH=15 SIZE=15><br>
Tel_celular:<input type="text" name="Tel_celular" MAXLENGTH=15 SIZE=15><br>
Domicilio:<input type="text" name="Domicilio" MAXLENGTH=80 SIZE=80><br>
Ciudad:<input type="text" name="Ciudad" MAXLENGTH=12 SIZE=12><br>
<input type="submit" VALUE="Insertar">

</form>

</body>

</html>




y este es el que guarda la informacion:

<html>
<head>
<title>Resultado de la insercion</title>
</head>
<body bgcolor="#008080">
<h2>LOS DATOS SE HAN AGREGADO SATISFACTORIAMENTE</h2>

<?php
$Nombre2=addslashes($Nombre);
$Tel_particular2=addslashes($Tel_particular);
$Tel_oficina2=addslashes($Tel_oficina);
$Tel_celular2=addslashes($Tel_celular);
$Direccion2=addslashes($Direccion);
$Ciudad2=addslashes($Ciudad);

function conectarse()
{
if (!($link=mysql_connect("localhost","root","")))
{
echo "Error conectando a la base de datos.";
exit();
}
if (!mysql_select_db("telefonos",$link))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $link;
}

$link= conectarse();
$sql = mysql_query ("INSERT INTO listado (Nombre,Tel_particular,Tel_oficina,Tel_celular,Dom icilio,Ciudad) VALUES ('$Nombre2','$Tel_particular2','$Tel_oficina2','$T el_celular2','$Domicilio2','$Ciudad2')",$link);

?>
<a href=insercion.html><h3>Agregar Nuevo Registro</h3></a>
<p>

<a href=telefonos.html><h3>Regresar al Menu Telefonos</h3></a>

</body>
</html>
__________________
mi correo [email protected]
  #24 (permalink)  
Antiguo 21/05/2004, 16:54
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
mira este campo en el form...


Domicilio:<input type="text" name="Domicilio" MAXLENGTH=80 SIZE=80><br>


y asi lo tenes para ingresar asi...

$Direccion2=addslashes($Direccion);


entonces $Dirección no tiene nada... pues la que realmente envia el form es Domicilio....

y al hacer el insert llevas es el supuesto Domicilio2 y esa variable no existe...

mira a ver si ahora si..

recuerda los nombres de las variables del form deben ser iguales en el script.... cuando son tomadas..

Última edición por Salome; 21/05/2004 a las 16:55
  #25 (permalink)  
Antiguo 21/05/2004, 16:58
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
nada no se ve
__________________
mi correo [email protected]
  #26 (permalink)  
Antiguo 21/05/2004, 17:01
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
ya le corregi otros pero sigueigual..
__________________
mi correo [email protected]
  #27 (permalink)  
Antiguo 21/05/2004, 17:04
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
mmmmm y no te saca ningún error... a ver enviame de nuevo el codigo como te quedo.... asi se llaman tus campos en la base de datos y demás???.... enviamelo yo creo una tabla asi.. y te cuenta que tal...
  #28 (permalink)  
Antiguo 21/05/2004, 17:07
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
ok..
los campos son los sigueinetes:

Nombre Tel_particular Tel_oficina Tel_celular Domicilio Ciudad

esos son los campos..

si quieres te paso por mail todos los archivos.. solo dame tu correo
__________________
mi correo [email protected]
  #29 (permalink)  
Antiguo 21/05/2004, 17:11
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 15 años, 1 mes
Puntos: 1
listo te envie un mensaje privado con mi correo.. enviame los archivos.. a ver..
  #30 (permalink)  
Antiguo 21/05/2004, 17:11
 
Fecha de Ingreso: mayo-2004
Ubicación: Culiacán, Sinaloa, Mexico
Mensajes: 46
Antigüedad: 13 años, 6 meses
Puntos: 0
ok
__________________
mi correo [email protected]
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:28.