Ver Mensaje Individual
  #2 (permalink)  
Antiguo 20/12/2005, 05:59
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Así tal cual no puedes usar en una sentencia SQL una función PHP .. Realmente deberías indicar exactamente como pretendes usar esa sentencia SQL.

A todo esto .. imagesx() es una función que trabaja con GD (www.php.net/gd) y requeriría de un "resource" de imagen .. así que para usar dicha función te haría falta por lo menos usar algo tipo:

Código PHP:
$img=imagecreatefromjpeg($foto); 
$x=imagesx($img); 
Pero para no liarte con eso .. ya que tu tienes un archivo físicamente en el sistema de archivos del servidor, usa:

getimagesize() para obtener el tamaño de la imagen.

De todas formas .. como función PHP que es getimagesize() o la anterior alternativa, .. no puedes usarlo como parte de una sentencia SQL como pretendías hacerlo. Tal cual lo tienes .. debes obtener TODO el resultado de tu consulta SQL y vía PHP hacer el "if()" (condicional) en base a la aplicación de esa función PHP para mostrarla o no o lo que hagas con ella.

Si tienes que hacer consultas SQL de ese tipo muy amenudo .. para optimizar el sistema, a la hora de registrar tu imagen en tu BD (su nombre) registra también su tamaño (X-Y) aplicando esas funciones a la hora de "subir" a tu BD esa imagen .. y actualiza dicho dato si modificas tu imagen. Con eso no hará falta ningún cálculo a la hora de presentar la imagen por qué ya lo harás a la hora de "subirla" a tu BD.

En general .. lo ideal es almacenar de la imagen la mayor cantidad de información posible de esta: tamaño en bytes .. tamaño X/Y ... nombre .. tipo de imagen (MIME) .. etc. Así podrás "operar" a nivel SQL muuuuy rápido y de forma Optima.

Un saludo,