Autor Tema: remplazar errores de Key duplicados en PHP,MYSLQ.  (Leído 5015 veces)

0 Usuarios y 1 Visitante están viendo este tema.

BigD'3mU

  • **
  • Mensajes: 237
  • Liked: 0
    • GETS
remplazar errores de Key duplicados en PHP,MYSLQ.
« : junio 08, 2008, 05:24:48 pm »
saben como cambio estos errores de php  por algo mas elegante, un msgbox o algo parecido??


rocaanvil

  • ***
  • Mensajes: 274
  • Liked: 0
    • http://rocaanvil.wordpress.com
Re: remplazar errores de Key duplicados en PHP,MYSLQ.
« Respuesta #1 : junio 08, 2008, 11:53:37 pm »
no se lo que haga tu codigo, pero algo facil y rapido seria..

if($arrayResp = mysqli_query ($data, $query))
{
//codigo qe dice qe la consulta se llevo a cabo con exito
}
else
{
//aqui pon qe la consulta genero un error, usa tablas o css para qe 'se vea bonito'
}

roca.
Si te gustan mis alas.. porque te empeñas en cortarlas??

hd

  • *
  • Mensajes: 43
  • Liked: 0
  • Hi, it's me.
Re: remplazar errores de Key duplicados en PHP,MYSLQ.
« Respuesta #2 : junio 18, 2008, 05:00:47 pm »
Erm...

Creo que tienes dos o tres cosas bastante confusas.

1.- Primero, la estructura de tu tabla. Creo que te queda claro que estás tratando de ingresar dos registros con un índice único (UNIQUE) en determinado campo, esto puede ser porque el campo en cuestión sea una llave primaria (que son índices únicos por naturaleza) o que hayas declarado expresamente un índice único sobre el campo.

2.- Segundo, en este caso olvidas que estás parseando la salida como HTML para que el cliente interactue con ella. Como el 99% de las aplicaciones desarrolladas en PHP. Cualquier interacción con el usuario... pues seguirá siendo mostrada como HTML. Me preguntas ¿cómo generar un msgbox en tu salida? Puedes aprovechar Javascript (un simple alert) o generar una bonita tabla con hartos colorcitos con tu mensaje de error.

Básicamente tu código debe parecerse a esto:
$query = "INSERT INTO tabla SET campo = 'valor'";
$resultado = llamada_a_query($query) OR die(generar_informacion_del_error());


Como recomendación general, trata de enviarte todos esos mensajes a una cuenta de correo o un registro de errores, el cliente no tiene ni debe interesarse del porqué falló internamente tu programa, además que le estás dando herramientas a terceros para depurar tu aplicación mediante todos esos mensajes.

3.- Te dejo de regalo algunos links que te serán de mucha utilidad en tu vida diaria:
Google
Quirksmode
w3schools
PHP
« Última Modificación: junio 18, 2008, 05:04:16 pm por hd »

BigD'3mU

  • **
  • Mensajes: 237
  • Liked: 0
    • GETS
Re: remplazar errores de Key duplicados en PHP,MYSLQ.
« Respuesta #3 : junio 18, 2008, 07:20:58 pm »
Básicamente tu código debe parecerse a esto:
$query = "INSERT INTO tabla SET campo = 'valor'";
$resultado = llamada_a_query($query) OR die(generar_informacion_del_error());


exactamente ese punto es donde quisirea cambiar los errores prestablecidos por algo mas elegante.

En cuanto a lo que mencionas del generador de errores es un buen punto a considerarse. :o

pulketo

  • ***
  • Mensajes: 289
  • Liked: 0
  • viviendo la vida...
Re: remplazar errores de Key duplicados en PHP,MYSLQ.
« Respuesta #4 : octubre 11, 2008, 09:49:26 pm »

mira si tienes ese duplicado ahi yo haria un select count(*) from tabla where unicoid='tal'
si el count te arroja un valor >0 pues logico que esta ocupado y no lo puedes usar... entonces la salida seria un:
echo "<script>alert('duplicado')</script>"; aunque yo no pondria alerts....

-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GE d-(++$) s:+ a C++ UL++ L+++ P W+++ !N w--- M-- !PS !t !5 e++ h! r+ y++
------END GEEK CODE BLOCK------