Foros del Web » Programando para Internet » PHP »

buscar un elemento no existente en una tabla

Estas en el tema de buscar un elemento no existente en una tabla en el foro de PHP en Foros del Web. Hola: Bueno resulta que necesito buscar un elemento que no existe en la tabla, justamente para saber lo que no hay: $buscar3="select producto from bodega ...
  #1 (permalink)  
Antiguo 24/11/2004, 07:18
 
Fecha de Ingreso: abril-2004
Ubicación: Concepcion
Mensajes: 72
Antigüedad: 20 años
Puntos: 0
Exclamación buscar un elemento no existente en una tabla

Hola:
Bueno resulta que necesito buscar un elemento que no existe en la tabla, justamente para saber lo que no hay:
$buscar3="select producto from bodega where producto='$producto_buscado'
order by producto";
$tabla_result3=mysql_query($buscar3,$conectar) or die ('No se puede obtener
datos de la tabla');
while($fila=mysql_fetch_array($tabla_result3)){
$producto=$fila['producto'];
if($producto=='' && $producto==0 && empty($producto)){
echo $producto_buscado;
}
}
Bueno si hago un echo antes de if , saldrian todos los productos que estan, pero depues del if no aparece el producto buscado si no esta en la tabla.
  #2 (permalink)  
Antiguo 24/11/2004, 07:25
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
El problema está aquí

if($producto=='' && $producto==0 && empty($producto))

cambia los && por ||
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #3 (permalink)  
Antiguo 24/11/2004, 07:30
 
Fecha de Ingreso: abril-2004
Ubicación: Concepcion
Mensajes: 72
Antigüedad: 20 años
Puntos: 0
Desacuerdo

Esta malo la consulta entoces, porque siguen apareciendo los elementos que estan. Lo que necesito es hacer la consulta a la tabla, buscar a travez de un elemento, si ese elemento no esta en la tabla, entonces mostrarlo, es para saber lo que no hay.
  #4 (permalink)  
Antiguo 24/11/2004, 07:36
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
Entonces lo que tienes que hacer es algo así como

$buscar3="select count(*) as cantidad from bodega where producto='$producto_buscado' ;
$tabla_result3=mysql_query($buscar3,$conectar) or die ('No se puede obtener
datos de la tabla');
$cantidad=mysql_result($tabla_result3,0,"cantidad" );
if ($cantidad==0){
echo "El producto $producto_buscado no existe";
}
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #5 (permalink)  
Antiguo 24/11/2004, 07:39
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Replantea la idea. ¿Cuando un valor no esta en una tabla? Cuando 0 registros lo contienen. Asi que en la consulta calcula el numero de registros que contienen el valor, y si resulta que el numero devuelto es 0, entonces no existe.

Algo como
Código PHP:
$buscar3="select count(*) from bodega where producto='$producto_buscado'";
$tabla_result3=mysql_query($buscar3,$conectar) or die ('No se puede obtener datos de la tabla');
if(
0==mysql_result($tabla_result3,0,0)){
  echo 
$producto_buscado;

Saludos.

PD: Mecachis, living, te me has adelantado.
__________________
Josemi

Aprendiz de mucho, maestro de poco.

Última edición por josemi; 24/11/2004 a las 07:42
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 02:50.