Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Select con where variable

Estas en el tema de Select con where variable en el foro de Mysql en Foros del Web. Buenas a todos: Hoy estaba desarrollando una galería de imágenes con php y mysql, y me ha surgido un problema bastante gordo: No me deja ...
  #1 (permalink)  
Antiguo 04/11/2010, 15:50
 
Fecha de Ingreso: noviembre-2007
Ubicación: Madrid, España
Mensajes: 23
Antigüedad: 16 años, 6 meses
Puntos: 1
Pregunta Select con where variable

Buenas a todos:

Hoy estaba desarrollando una galería de imágenes con php y mysql, y me ha surgido un problema bastante gordo: No me deja seleccionar todos los campos que cumplan una característica determinada.

Para que os hagais una idea, las fotos están todas en una misma carpeta, y almacenado el nombre y la categoría en una tabla llamada "fotos". Mi problema está exáctamente en que algo en la consulta está mal, pero no se el qué:


Código PHP:
  $consulta mysql_query ("SELECT * FROM fotos WHERE categoria=$category" $conect)
  or die (
'Fallo en la consulta. No se pudieron seleccionar las fotos.'); 

¿Veis algo mal? Os dejo el código completo de la parte que no funciona, a ver si es que he metido la gamba en otro sitio...

Código PHP:
  <div id="foto-cont">
  <h2> <? echo  $category?> </h2>
  <?
  
if ($category == NULL) {
      echo 
"Pulsa en una de las categorias de la izquierda para ver las fotograf&iacute;s.";
  } else {
  
$conect mysql_connect ('SERVIDOR''USUARIO''PASS')
  or die (
'No se puede conectar con el servidor');
  
  
mysql_select_db ('BASE-DE-DATOS')
  or die (
'No se puede seleccionar la base de datos');
  
  
$consulta mysql_query ("SELECT * FROM fotos WHERE categoria=$category" $conect)
  or die (
'Fallo en la consulta. No se pudieron seleccionar las fotos.');
    
?>
  <div class="yoxview">
  <? while ($resultado mysql_fetch_array($consulta)){ ?>
  
  <a href="up/<? echo $resultado['url']; ?>"><img src="up/<? echo $resultado['url']; ?>" alt="<? echo $resultado['url']; ?>" title="<? echo $resultado['info']; ?>" height="75" width="75" /></a>
  
  <? }; ?>
  </div>
  <?
  mysql_close 
($conect);
  }; 
?>
  </div>
Muchas gracias de antemano a todos, y a ver si encontramos el problema. Mientras tanto seguiré probando. ¡Un saludo!

Última edición por Sorlak; 04/11/2010 a las 15:54 Razón: Dejo el código completo
  #2 (permalink)  
Antiguo 04/11/2010, 16:00
 
Fecha de Ingreso: noviembre-2007
Ubicación: Madrid, España
Mensajes: 23
Antigüedad: 16 años, 6 meses
Puntos: 1
Exclamación Solucionado

Vale, ya lo he solucionado. Dejo la solución por si a alguien le pasa lo mismo. El problema es que en SQL las variables PHP han de ir entre comillas simples (''), por tanto, la solución sería:

Código PHP:
$consulta mysql_query ("SELECT * FROM fotos WHERE categoria='$category'" $conect)
  or die (
'Fallo en la consulta. No se pudieron seleccionar las fotos.'); 
No he tardado tanto desde que he puesto el mensaje, pero llevo toda la tarde intentándolo. Quien tenga potestad, que cierre el tema :)

¡Un saludo a todos!

Etiquetas: select, variables
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:53.