Foros del Web » Programando para Internet » PHP »

Error 1062

Estas en el tema de Error 1062 en el foro de PHP en Foros del Web. Hola buenas: Tengo un problema al insertar en mi base de datos (phpmyadmin, xamp) <?php $conexion=mysql_connect("localhost","root","") or die('NO PUDO CONECTARSE'); mysql_select_db("qr",$conexion); $cod="2"; $resul=mysql_query("insert into datos ...
  #1 (permalink)  
Antiguo 06/06/2011, 04:06
 
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 14 años
Puntos: 0
Error 1062

Hola buenas:
Tengo un problema al insertar en mi base de datos (phpmyadmin, xamp)

<?php
$conexion=mysql_connect("localhost","root","") or die('NO PUDO CONECTARSE');
mysql_select_db("qr",$conexion);
$cod="2";
$resul=mysql_query("insert into datos values('$cod','$_POST[log]','$_POST[nom]','$_POST[ape]','$_POST[calle]','$_POST[pobla]','$_POST[provi]','$_POST[cod_pos]','$_POST[email]','$_POST[tel]')",$conexion);

if ($resul) {
echo "Registro insertado";
}
else
{
if (mysql_errno($conexion)==1062){
echo "<h2>CLAVE DUPLICADA, No se ha podido insertar</h2>";
}
else {
$numeroERROR=mysql_error($conexion);
$descripcionERROR=mysql_error($conexion);
echo "<h2>Nº de error:".$numeroERROR." * Descripción: ".$descripcionERROR."</h2>";
}
}
mysql_close();
?>

Al insertar me aparece la primera opcion del if Calve duplicada.

Supongo k estoy introduciendo algun dato repetido en mi base de datos pero no tengo nada escrito.

Gracias de antemano.
  #2 (permalink)  
Antiguo 06/06/2011, 04:47
 
Fecha de Ingreso: marzo-2011
Mensajes: 107
Antigüedad: 13 años
Puntos: 22
Respuesta: Error 1062

Cual es la clave primaria?? Si es $cod, siempre estas metiendo $cod = 2 por eso te sale clave duplicada. Aunque me parece raro si no tienes nada en la tabla... Da error y el numero es ese?
  #3 (permalink)  
Antiguo 06/06/2011, 05:08
 
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 14 años
Puntos: 0
Respuesta: Error 1062

haber tenia escrito un primer registro en l a tabla con cod 1, por eso tengo puesto 2, pero lo he borrado y todo y aun asi no me deja insertarlo
La clave prinmaria es cod que ahora no, pero sera incrementada automaticamente porque en cada insercion que haga ne la tabla mirare el ultimo cod escrito con un select hastas el final y le sumare uno al ultimo cod
  #4 (permalink)  
Antiguo 06/06/2011, 05:14
 
Fecha de Ingreso: marzo-2011
Mensajes: 107
Antigüedad: 13 años
Puntos: 22
Respuesta: Error 1062

Si es verdad que el error es el 1062 es una clave duplicada seguro, no creo que te vaya a mentir XD mira bien cual es la clave primaria y si estás escribiendo en todos los campos o no vaya a ser que sea otro error. Por cierto, no sería if (mysql_errno($resul)==1062) ??
  #5 (permalink)  
Antiguo 06/06/2011, 05:18
 
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 14 años
Puntos: 0
Respuesta: Error 1062

con mysql_errno le pasas tu el fallo, es decir, si se produce el fallo que se le indica
y mysql_error es para que te devuelva errores
  #6 (permalink)  
Antiguo 06/06/2011, 05:41
 
Fecha de Ingreso: marzo-2011
Mensajes: 107
Antigüedad: 13 años
Puntos: 22
Respuesta: Error 1062

Ya, bueno, hace mucho que no uso estas sentencias, lo siento. Mysql_errno te da el número de error, mysql_error te da la descripción del error.

Con tu código y mi base de datos no me da error si pongo otro número en la clave primaria (si pongo el mismo sí). Has probado a meter los datos en la base da datos directamente? prueba con querys en algún GUI (phpmyadmin, sql yog, workbench, por ejemplo) a ver si te funciona asi, mete datos sencillitos.
  #7 (permalink)  
Antiguo 07/06/2011, 01:34
 
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 14 años
Puntos: 0
Respuesta: Error 1062

Ante todo Saneko, gracias por el tiempo y ayuda prestados,

Uso phpmyadmin y si que puedo insertarlo, pero no podria estar el error a la hora de meter el $cod? es que hace tiempo que no uso php y esty con un cacao...

gracias de nuevo
  #8 (permalink)  
Antiguo 07/06/2011, 02:44
 
Fecha de Ingreso: marzo-2011
Mensajes: 107
Antigüedad: 13 años
Puntos: 22
Respuesta: Error 1062

Y si copias la variable en php y la visualizas?
Código PHP:
$query "insert into datos values('".$cod."','".$_POST[log]."','".$_POST[nom]."','".$_POST[ape]."','".$_POST[calle]."','".$_POST[pobla]."','".$_POST[provi]."','".$_POST[cod_pos]".','".$_POST[email]."','".$_POST[tel]."')"

echo 
$query
A ver si está bien escrita la sentencia, igual el cod es null y 2 null no puede haber, no sé XD
Por cierto, escribo entre ".." porque es la forma correcta (o eso creo) de escribir en php además se distingue mejor, no?
  #9 (permalink)  
Antiguo 07/06/2011, 02:51
 
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 14 años
Puntos: 0
Respuesta: Error 1062

aaa cuando ponga lo de "$cod" no? jejeje va, sorry.
En esa varialbe haces un inert concatenado? creo k lo de ". ." es para concatenar no?
  #10 (permalink)  
Antiguo 07/06/2011, 03:26
 
Fecha de Ingreso: marzo-2011
Mensajes: 107
Antigüedad: 13 años
Puntos: 22
Respuesta: Error 1062

Bueno, sin concatenar tambien funciona, es solo para ver si recibe bien las variables y escribe bien la sentencia
  #11 (permalink)  
Antiguo 07/06/2011, 05:16
 
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 14 años
Puntos: 0
Respuesta: Error 1062

no me devuelve nada de nada me sale todo el codigo que tengo escrito en la plantalla
  #12 (permalink)  
Antiguo 07/06/2011, 05:49
 
Fecha de Ingreso: marzo-2011
Mensajes: 107
Antigüedad: 13 años
Puntos: 22
Respuesta: Error 1062

Como que no te devuelve nada?? Que te sale?
  #13 (permalink)  
Antiguo 07/06/2011, 06:43
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Error 1062

mira haz esto y dino
mysql_query($sql)or die(mysql_error());

Etiquetas: 1062
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 00:44.