
28/12/2005, 05:48
|
 | Moderador | | Fecha de Ingreso: abril-2002 Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 11 meses Puntos: 1284 | |
Gracias Panino5001:
Creo que haré algo como lo que propones, ya que creo que es difícil conseguir mi objetivo de otra manera.
Lo que tengo por ahora es:
Código:
<?php
function extension($cadena) {
if ($cadena == "image/png") return "png";
if ($cadena == "image/gif") return "gif";
if ($cadena == "image/jpg") return "jpg";
return "php";
}
function crearImagen($f, $e) {
if ($e == "png") return imagecreatefrompng($f);
if ($e == "gif") return imagecreatefromgif($f);
if ($e == "jpg") return imagecreatefromjpg($f);
return imagecreatefromgd($f);
}
function mostrarImagen($imagen, $e) {
switch ($e) {
case "png":
imagepng($imagen);
break;
case "gif":
imagegif($imagen);
break;
case "jpg":
imagejpg($imagen);
break;
}
}
if(isset($_GET['id'])) {
$elId = $_GET['id'];
$servidor = $_SERVER["SERVER_NAME"];
if ($servidor == "localhost") {
include("variables-localhost.php");
}
else {
include("variables-remotas.php");
}
$conexion=mysql_connect($host,$usuario,$clave) or die ("no se ha podido conectar a la BD");
mysql_select_db($basedatos) or die ("no se ha podido seleccionar la BD");
$sql = "SELECT archivo_binario,archivo_tipo, activo FROM $tabla WHERE id='".$_GET['id']."'";
$consulta = mysql_query($sql,$conexion);
//$vale = mysql_result($consulta,0,"activo");
$vale = mysql_num_rows($consulta);
if ($vale == 0) {
$sql = "SELECT archivo_binario, archivo_tipo FROM $tabla WHERE id=97";
$consulta = mysql_query($sql,$conexion);
}
$datos = mysql_result($consulta,0,"archivo_binario");
$tipo = mysql_result($consulta,0,"archivo_tipo");
$fichero = "temporal/id$elId.".extension($tipo);
$f = fopen($fichero, "w");
if (fwrite($f, $datos) === FALSE) {
echo "Cannot write to file ($f)";
exit;
}
fclose($f);
$imagen = crearImagen($fichero, extension($tipo));
mostrarImagen($imagen, extension($tipo));
}
?>
Sé que se puede mejorar, pero en localhos me funciona... ahora probaré lo de borrar el archivo temporal.
Saludos
__________________ Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo |