Ver Mensaje Individual
  #6 (permalink)  
Antiguo 03/02/2010, 16:14
nfo
 
Fecha de Ingreso: octubre-2008
Ubicación: EsPaCiO TiEmPo
Mensajes: 408
Antigüedad: 15 años, 6 meses
Puntos: 5
Respuesta: ocultar la ruta de la imagen

Ya encontre lo que necesito, para los uqe quieran.

Código:
Para mostrar las imágenes lo que haremos será leerlas con readfile y enviarlas al buffer de salida (imagen.php):

    <?php
    if ((isset($_GET['id_img'])) and (is_numeric($_GET['id_img'])))
    {
      if (comprobar_permisos($_GET['id_img']))
        $url=obtener_url('id_img');
      else
        $url='http://wwww.miweb.com/img/sinprivilegios.jpg';

      header("Content-type: image/jpg");
      readfile($url);
    }

    function comprobar_permisos($id_img)
    {
      /* Comprobamos contra la base de datos que el usuario actual tiene permisos
         sobre la imagen que le pasamos, devolviendo true o false */
    }

    function obtener_url($id_img)
    {
      // Se conecta a la base de datos y nos devuelve la url de la imagen
      return $url;
    }
    ?>

Este sencillo script nos generara una imagen pero no mostrará la url de la misma, ya que siempre mostrará como url: http://www.miweb.com/imagen.php?id_img=xxx. Para mostrar la imagen solo tendremos que hacer lo siguiente:

    <img src='http://www.miweb.com/imagen.php?id_img=xxx'>

Solo tenemos que Sustituir xxx por el id de la imagen que queramos mostrar. En la base de datos tendremos una tabla con los id's de las imágenes y sus urls correspondientes, así como otra tabla para guardar que usuarios tienen permisos sobre que imágenes.