Foros del Web » Programando para Internet » PHP »

Carga datos c/control de ingresos

Estas en el tema de Carga datos c/control de ingresos en el foro de PHP en Foros del Web. Hola, quiero hacer una carga de datos con un control de ingresos de ellos para que no me deje insertar datos que ya estan en ...
  #1 (permalink)  
Antiguo 05/09/2006, 20:06
 
Fecha de Ingreso: noviembre-2003
Mensajes: 499
Antigüedad: 20 años, 5 meses
Puntos: 7
Carga datos c/control de ingresos

Hola, quiero hacer una carga de datos con un control de ingresos de ellos para que no me deje insertar datos que ya estan en la tabla, pero no tengo ni idea de como puedo hacerlo.
Se me ocurre que tendría que usar insert to.....con where....., pero eso no funciona.
si alguien me puede ayudar se lo agradezco

Gracias
  #2 (permalink)  
Antiguo 05/09/2006, 20:21
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
No, .. el "INSERT" no tiene estructuras condicionales (WHERE) en SQL.

Lo que debes hacer es una consulta SQL por ese criterio (datos que no quieres que se repitan) y si el resultado de la busqueda es = 0 . .haces tu INSERT y si es =1 .. no haces el INSERT.

No indicas que BBDD usas .. Mysql? cual? ...

Si hablamos de Mysql, en esta tienes desde la función de SQL nativa de Mysql como "COUNT()" .. que te entrega UN registro de resultado con el valor de los registros encontrados bajo las concidiciones (WHERE ..) que establezcas .. hasta la solución PHP que es el uso de la función: mysql_num_rows() .. la cual "cuenta" el total de resultados arrojados por tu consulta. Como se espera entre 0 y 1 resultados .. realmente aquí dá un poco igual que opción tomar.

Sería algo tipo:

Código PHP:
// etc ..
$resultado="SELECT * FROM tabla WHERE campo='".$dato."'";

if (
mysql_num_rows($resultado) == 0){
// haces tu INSERT
} else {
// Registro ya existe ... tu veras que haces.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 05/09/2006, 21:13
 
Fecha de Ingreso: noviembre-2003
Mensajes: 499
Antigüedad: 20 años, 5 meses
Puntos: 7
Gracias Cluster, lo voy a probar
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:41.