Estuve siguiendo paso a paso las cosas que dice el tutorial de como subir las imagenes a una BDatos en binario. A la hora de subirlas todo bien. Pero a la hora de mostrarlas, tengo problemas. No es que el script me de errores, pero la ejecucion del mismo se me hace infinita, por asi decirlo, pues no me muestra la imagen ni nada y el explorador se me cuelga que hasta la PC se me bloquea. No se porque razon pasa esto pues estuve leyendo todos los POST de ese mensaje y a muchas personas le funciona correctamente. Por si sirve de algo uso WinXP, IIS y PHP 4.3.6 con soporte GD2.
Ahora ese mismo codigo he intentado modificarlo para adaptarlo a los requerimientos de mi sitio. La cosa es que estoy realizando un Portal para los JClub. La direccion del mismos es http://www.jcce.granma.inf.cu y quiero implementarle un sistema de noticias. Ya lo habia hecho usando ficheros y haciendo upload de los mismos al servidor pero por razones de seguridad mi hosting me ha pedido que haga el campo imagenes de la BDatos y mayor facilidad a la hora de borrarlas.
Este es el codigo con el cual inserto las imagenes a la BDatos:
Código PHP:
if($_FILES['imagen']['name'] != ""){
$imagenbintmpname = $_FILES['imagen']['tmp_name'] ;
$imagenbin = addslashes(fread(fopen($imagenbintmpname, "rb"),filesize($imagenbintmpname)));
}else{
$imagenbin = "";
}
$query = "INSERT INTO jcgrm_noticias(idcat,titulo,resumen,ampliacion,imagen,autor,celectronico,referencia,fecha_publicacion,importancia,activa)";
$query.= " VALUES('".$_POST['categoria']."','".$_POST['titulo']."','".$_POST['resumen']."','".$_POST['ampliacion']."','".$imagenbin."','".$_SESSION['username']."','".$_SESSION['usermail']."','".$_POST['referencia']."',NOW(),'".$_POST['importancia']."','".$_POST['activa']."')";
$result = mysql_query($query) or die(mysql_error());
Código PHP:
function GetMostImportantNew($sid){
$query = "SELECT *,DAYOFMONTH(fecha_publicacion) as dia, DAYOFWEEK(fecha_publicacion) as semana, MONTH(fecha_publicacion) as mes, YEAR(fecha_publicacion) as year, DATE_FORMAT(fecha_publicacion,'%h:%i %p') as hora FROM jcgrm_noticias WHERE (importancia >= 7) AND (activa<>0) ORDER BY RAND()";
$result = mysql_query($query) or die("No se ha podido ejecutar la consulta $query. MySQL ha dicho: ".mysql_error());
$fetch = mysql_fetch_assoc($result);
$imagen = mysql_result($result,0,"imagen");
$meses = array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
$diassemana = array("Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado");
if(mysql_num_rows($result)!= 0 ){
....
if($fetch['imagen']==""){
echo "<td colspan='2' class='font padding bold'>".$fetch['titulo']."</td>";
}else{
echo "<td width='19%' rowspan='5' align='center' valign='top'><img src='thumbnails.php?dir=not&imagen=".$fetch['imagen']."' alt='".$fetch['titulo']."' class='cursor'></td>";
echo "<td width='81%' colspan='2' class='font padding bold'>".$fetch['titulo']."</td>";
}
echo "</tr>";
...
}
}
Salu2

