base de datos:
-- Servidor: localhost
-- Tiempo de generación: 24-02-2010 a las 16:03:00
-- Versión del servidor: 5.1.33
-- Versión de PHP: 5.2.9-2
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- Base de datos: `fotos`
--
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `fotos.foto_foto`
--
CREATE TABLE IF NOT EXISTS `fotos.foto_foto` (
`idfoto` int(11) NOT NULL AUTO_INCREMENT,
`foto_grande` mediumblob NOT NULL,
`foto_pequena` mediumblob NOT NULL,
PRIMARY KEY (`idfoto`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
datos.php:
Código PHP:
<?php
$servidor="localhost";
$nombre="root";
$clave="contraseña";
?>
index.php:
Código:
guardar_archivos.php:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title></title> </head> <body> <?php echo '<font size="1">'; echo '<center>'; echo'<form enctype="multipart/form-data" action="guardar_archivos.php" method="post">'; echo 'Foto<br><input type="file" name="foto">'; echo '<br><br>'; echo 'Thum.<br><input type="file" name="thumbail"><br><br>'; echo '<input type=hidden name=max_file_size value=1000000>'; echo '<input type="submit" value="Enviar archivo">'; echo '</form>'; echo '<br><br><a href=descargar_archivo2.php>Ver album</a>'; ?> </body> </html>
Código PHP:
<?php
require ("datos.php");
echo '<center><font size=1>';
$conexion=@mysql_connect($servidor,$nombre,$clave);
$res=mysql_select_db("fotos",$conexion);
if ( $conexion > 0 )
{
$archivo = $_FILES["foto"]["tmp_name"];
$tamanio = $_FILES["foto"]["size"];
$tipo = $_FILES["foto"]["type"];
$nombre = $_FILES["foto"]["name"];
$archivo_thumb = $_FILES["thumbail"]["tmp_name"];
$tamanio_thumb = $_FILES["thumbail"]["size"];
$tipo_thumb = $_FILES["thumbail"]["type"];
$nombre_thumb = $_FILES["thumbail"]["name"];
if ( $archivo != "none" && $archivo_thumb!="none")
{
$fp = fopen($archivo, "rb");
$contenido = fread($fp,$tamanio);
$contenido = addslashes($contenido);
fclose($fp);
$fp_thumb = fopen($archivo_thumb,"rb");
$contenido_thumb = fread($fp_thumb,$tamanio_thumb);
$contenido_thumb = addslashes($contenido_thumb);
fclose($fp_thumb);
$query = "INSERT INTO fotos.foto_foto VALUES(null,'".$contenido."','".$contenido_thumb."')";
mysql_query($query);
if(mysql_affected_rows($conexion) > 0)print "Se ha guardado el archivo en la base de datos.";
else print "NO se ha podido guardar el archivo en la base de datos.";
}
else print "No se ha podido subir el archivo al servidor";
}else{
echo 'No conectado';
}
//echo "<HTML><SCRIPT>document.location='index.php';</SCRIPT></HTML>";
?>
foto_grande.php
Código PHP:
<?php
require("datos.php");
$conexion=@mysql_connect($servidor,$nombre,$clave);
$res=mysql_select_db("fotos",$conexion);
$qry = "SELECT foto_grande FROM fotos.foto_foto where idfoto='".$_GET["idfoto"]."'";
$res2 = mysql_query($qry);
$foto=basename(tempnam(getcwd(),'tmp'));
$foto.=".jpg";
$contenido2=mysql_result($res2,0,0);
$ft=fopen($foto,"w");
fwrite($ft,$contenido2);
fclose($ft);
echo '<center><img src='.$foto.'> <br><br>';
echo '<font size=1><a href=descargar_archivo2.php>Volver al album</a>';
?>
descargar_archivo.php:
Código PHP:
<?php
require ("datos.php");
$conexion=@mysql_connect($servidor,$nombre,$clave);
$res=mysql_select_db("fotos",$conexion);
$qry = "SELECT idfoto,foto_pequena FROM fotos.foto_foto";
$res2 = mysql_query($qry);
for ($j=0;$j < mysql_num_rows($res2);$j++)
for ($i=0;$i < mysql_num_fields($res2);$i++)
{
$foto=basename(tempnam(getcwd(),'tmp'));
$foto.=".jpg";
if ($i==1)
{
$contenido2=mysql_result($res2,$j,$i);
$ft=fopen($foto,"w");
fwrite($ft,$contenido2);
fclose($ft);
echo '<a href=fotogrande.php?idfoto='.mysql_result($res2,$j,0).'><img src='.$foto.'> ';
echo '';
}
}
echo '<br><br><font size=1><center><a href=form.php>Insertar nuevas fotos</a>';
?>
El fallo es que no me consigue guardar las imagenes en la base de datos