Hola a todos, soy el webmaster de Subir - Fotos .com.
Mi web es de subir imágenes, y he preparado un script para que, cada vez que alguien cuelgue una imagen, pueda haber una miniatura automática de la misma. Para eso, creé el archivo redimensionar.php con el siguiente código:
<?php
$anchura=120;
$hmax=120;
$nombre=basename($_GET[imagen]);
$datos = getimagesize($nombre);
if($datos[2]==1){$img = @imagecreatefromgif($nombre);}
if($datos[2]==2){$img = @imagecreatefromjpeg($nombre);}
if($datos[2]==3){$img = @imagecreatefrompng($nombre);}
$ratio = ($datos[0] / $anchura);
$altura = ($datos[1] / $ratio);
if($altura>$hmax){$anchura2=$hmax*$anchura/$altura;$altura=$hmax;$anchura=$anchura2;}
$thumb = imagecreatetruecolor($anchura,$altura);
imagecopyresampled($thumb, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]);
if($datos[2]==1){header("Content-type: image/gif"); imagegif($thumb);}
if($datos[2]==2){header("Content-type: image/jpeg");imagejpeg($thumb);}
if($datos[2]==3){header("Content-type: image/png");imagepng($thumb); }
?>
Así, si la url de una imagen es: http://www.subir-fotos.com/uploads2/d6cac3fff7.jpg, su miniatura estaría en esta url: http://www.subir-fotos.com/uploads2/[b] ... c3fff7.jpg[/b]
El problema está en que los foros phpBB2 están programados de modo que si alguien introduce una url que no sea de una imagen entre las etiquetas [img]%20y%20[/img], pues, directamente, se muestra lo escrito como texto, ya que si la url no es realmente de una imagen, no tiene por qué entenderlo así el foro, a pesar de que esté entre etiquetas de imagen. Y, precisamente por esto, el foro no acepta esta url: http://www.subir-fotos.com/uploads2/[b] ... c3fff7.jpg[/b] como imagen. Para evitarlo, querría saber si fuese posible crear una url amigable, del estilo de http://www.subir-fotos.com/uploads2/[b] ... c3fff7.jpg[/b], ya que esto sí que sería aceptado por el foro como url real de una imagen.
Ya he probado a usar este código en el archivo redimensionar.php, pero no ha servido para nada:
<?php
if(isset($PATH_INFO)) {
$vardata = explode('/', $PATH_INFO);
$num_param = count($vardata);
if($num_param % 2 == 0) {
$vardata[] = '';
$num_param++;
}
for($i=1; $i<$num_param; $i+=2) {
$$vardata[$i] = $vardata[$i+1];
$total=$total + $$vardata[$i];
}
}
?>
Si alguien pudiese explicarme por qué no funciona así o, en todo caso, cómo podría hacerlo funcionar como yo quiero, le estaría harto agradecido.
Gracias por adelantado.
Un saludo, el webmaster de Subir - Fotos .com: PulpiXioN.
Sobre las urls amigables...
Moderador: Moderadores
Si el servidor HTTP que utilizas es Apache y puedes disponer de mod_rewrite, estúdiate su funcionamiento y haz que puedas acceder a http://www.subir-fotos.com/uploads2/red ... c3fff7.jpg
con URLs del estilo http://www.subir-fotos.com/uploads2/min ... c3fff7.jpg
De este modo, cuando un foro phpBB encuentre esa URL, no tendrá dudas de que se trata de una imagen.
con URLs del estilo http://www.subir-fotos.com/uploads2/min ... c3fff7.jpg
De este modo, cuando un foro phpBB encuentre esa URL, no tendrá dudas de que se trata de una imagen.
Equipo ABCdatos.
http://www.abcdatos.com/
http://www.abcdatos.com/
Muchas gracias, pero ya lo intenté...
Gracias por la rápida respuesta, pero ya intenté eso, pues probé con el código que antes mencioné y con otro similar que creo que usaba el mod_rewrite. Pero luego ponía la dirección y no funcionaba; daba error el script de redimensionar imágenes, supongo que porque la variable imagen no le llegaba correctamente.
Gracias de todos modos, pero si alguien sabe una solución más concreta (un código para incluir en redimensionar.php o algo así), que no dude en comunicármelo.
SALU2!
Gracias de todos modos, pero si alguien sabe una solución más concreta (un código para incluir en redimensionar.php o algo así), que no dude en comunicármelo.
SALU2!
A ver, si el problema lo tienes con los foros phpBB porque la URL no termina en .jpg, por mucho que hagas dentro del script PHP no vas a poder variar su URL aparente. Insisto en que mires mod_rewrite, el problema lo has de resolver en el servidor HTTP, no en el código PHP. Configurando el httpd.conf adecuadamente, puedes hacer que los accesos a http://www.subir-fotos.com/uploads2/min ... c3fff7.jpg se tratasen internamente como si fueran http://www.subir-fotos.com/uploads2/red ... c3fff7.jpg, y eso es lo que entiendo que resuelve tu problema.
Equipo ABCdatos.
http://www.abcdatos.com/
http://www.abcdatos.com/
Ya lo conseguí
Ya no importa, lo solucioné de otro modo.
Gracias igualmente.
SALU2!
Gracias igualmente.
SALU2!