Foros del Web » Programando para Internet » PHP »

no guadar registros duplicados

Estas en el tema de no guadar registros duplicados en el foro de PHP en Foros del Web. hola mi pregunta es komo no guardar registro n o duplicados en m i abse de datos my sql kon php 4 cone st e ...
  #1 (permalink)  
Antiguo 12/05/2006, 07:48
 
Fecha de Ingreso: abril-2006
Mensajes: 240
Antigüedad: 18 años
Puntos: 1
no guadar registros duplicados

hola mi pregunta es komo no guardar registro n o duplicados en m i abse de datos my sql kon php 4

cone st e codigo ingreso los registro a la base dee dato pero quiero k guarde no duplicado

gracias

Código PHP:
<?
conectar
();
if (
$id_producto==0) {
    
$sql="insert into producto(nombre, precio, codigo, descripcion, seleccion, descuent, disponibilidad, fecha, fabricante, cantidad, modelo, url, peso, orden)
     values 
         ('$nombrep', '$preciop', '$codigop', '$descripcionp', '$seleccionp', '$descuentp', '$disponibilidadp', '$fechap', '$fabricantep', '$cantidadp', '$modelop', '$urlp', '$pesop', '$ordenp')"
;
    }    else {
    
$sql="update producto set orden='$orden', nombre='$nombrep', codigo='$codigop', descripcion='$descripcionp', seleccion='$seleccionp', descuent='$descuentp', disponibilidad='$disponibilidadp', fecha='$fechap', fabricante='$fabricantep', cantidad='$cantidadp', modelo='modelop', url='$urlp', peso='$pesop' where idproducto='$id_producto'";

mysql_query($sql) or die (mysql_error());
desconectar();
?>
<script>
    window.location='<?=$PHP_SELF ?>?pagina=producto';
</script>
  #2 (permalink)  
Antiguo 12/05/2006, 08:09
Avatar de :_DaMMiaN_:  
Fecha de Ingreso: agosto-2005
Ubicación: En una shell
Mensajes: 15
Antigüedad: 18 años, 8 meses
Puntos: 0
Valor duplicado

Comprueba que el prodructo a ingresar ya no exista en la db, y listo.

Hazlo por algun identificador unico, como el codigo del producto o algo asi
__________________
El que al mundo vino y no uso Linux... a que chucha vino

WWW.OSMWEB.CL
  #3 (permalink)  
Antiguo 12/05/2006, 08:10
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
saludos..

una salucion es crear una sentencia sql donde verifiques si la varibale que no quieres repetir no este es decir si no quieres que se repita tu variable nombre puedes hacer esto...
Cita:
$sql="select nombre from producto where nombre = $nombre";
luego guardar el resultado en un arreglo::
$arreglo=mysql_fetch_array($sql);

comprobar

if($arreglo[0]==0)//que no existe
{
tu insercion
}
else//que ya esta en la base de datos
{
echo "error nombre del producto existente";
}
espero te sea de ayuda
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #4 (permalink)  
Antiguo 12/05/2006, 08:38
 
Fecha de Ingreso: abril-2006
Mensajes: 240
Antigüedad: 18 años
Puntos: 1
gracias

gracias ahi funko!!!

aka les dejo el codigo por si aka

Código PHP:
<?
conectar
();
$busqueda=mysql_query("SELECT nombre FROM subcategoria WHERE nombre='$nombrepsubcategoria'");
if (
mysql_num_rows($busqueda)!=0){
    echo 
"el nombre de la subcategoria ya esta siendo usado por otra. por favor intente con otro nombre"."<br>";
    echo 
"<a href=\"javascript:history.back()\"><b>Volver<b></a>";
if (
$id_subcategoria==0) {
    
$sql="insert into subcategorias(orden, nombre ) values ('$orden','$nombresubcategoria')";
} else {
    
$sql="update subcategorias set orden='$orden', nombre='$nombresubcategoria' where idsubcategoria='$id_subcategoria'";
}
mysql_query($sql) or die (mysql_error());
desconectar();
?>
<script>
    window.location='<?=$PHP_SELF ?>?pagina=subcategoria';
</script>

falta mejorarlo un poko.. ahi lo voy hacer tb con la orden y el id de la categoria 

se apsaron graxias
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 11:57.