Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => PHP => Mensaje iniciado por: Siempre Azul en 28 Febrero 2014, 23:36 PM

Título: como hago para no dejar repetir numero en php
Publicado por: Siempre Azul en 28 Febrero 2014, 23:36 PM
hola amigos como hago para no dejar repetir un numero en php con mysql, ejemplo si tengo un numero agregado en la base de datos 123 y vuelvo a meter 123 me salga un error diciendo que el numero esta repetido!

muchas gracias de antemano.
Título: Re: como hago para no dejar repetir numero en php
Publicado por: dainodaibouken en 28 Febrero 2014, 23:57 PM
pues primero haces la consulta a la base y si encuentra que es igual al valor ingresado, que lo ignore.

saludos
Título: Re: como hago para no dejar repetir numero en php
Publicado por: ~ Yoya ~ en 1 Marzo 2014, 23:45 PM
Agrega la columna como UNIQUE y si insertas un dato repetido, MySQL devolvera error.

Constraints (http://www.w3schools.com/sql/sql_constraints.asp)

Saludos.
Título: Re: como hago para no dejar repetir numero en php
Publicado por: Ethgar en 13 Marzo 2014, 16:34 PM
1. has una consulta que te arroje tus retorsivo en tu tabla y los guardas en un array.
2. compara los datos que pretendes ingresar , si existen en el array  descartalos.
3. Supongo que con los dos puntos de arriba queda, saludos!
Título: Re: como hago para no dejar repetir numero en php
Publicado por: 1mpuls0 en 13 Marzo 2014, 16:48 PM
Cita de: Ethgar en 13 Marzo 2014, 16:34 PM
1. has una consulta que te arroje tus retorsivo en tu tabla y los guardas en un array.
2. compara los datos que pretendes ingresar , si existen en el array  descartalos.
3. Supongo que con los dos puntos de arriba queda, saludos!

Si tienes millones de registros (siendo exagerados) esto no es muy optimo.


Cita de: dainodaibouken en 28 Febrero 2014, 23:57 PM
pues primero haces la consulta a la base y si encuentra que es igual al valor ingresado, que lo ignore.

saludos
Con la sugerencia de ~ Yoya ~ te ahorras el paso de la comprobación si existe.


Como te comenta el compañero ~ Yoya ~ coloca el campo como UNIQUE.
Lo único que tienes que hacer es leer el error al hacer el insert o un update.


Error CODE: 1062
DUPLICATE entry '929' FOR KEY 'numero'


:http://www.w3schools.com/sql/sql_unique.asp

Saludos.