Ya que normalmente pregunto y me contestáis muy rápido y muy bien, hoy voy a aportar algo.
He estado buscando alguna forma de ocultar la URL de una imagen al mostrarla obteniendo la ruta de una base de datos.
Las opciones que siempre veía eran con Header y, como ya había escrito, me daba error.
Finalmente he encontrado una solución y la comparto aquí para quien la busque.
En la página propiamente dicha, donde queramos que se muestre la imagen llamamos a una función:
Código PHP:
Ver original
<?php cargaimagen($id_imagen);?>
La función cargaimagen.php sería:
Código PHP:
Ver original
function cargaimagen($id_imagen) { $sql = "SELECT ruta FROM imagenes WHERE id_imagen = '" . $id_imagen "';"; echo "<img src=\"data:image/png;base64,$img_base64\" />"; }
Ojo, la función no tiene control de errores... pero si la imagen existe en el servidor, en la ruta que marca la base de datos, se muestra en el navegador sin dar pistas de la ruta.
Espero que os sirva.
Salu2.
Javi.