buenas tardes soy nuevo en programacion en php,
tome este codigo de internet
se inserta bien la imagen,
deseo insertar una imagen en una base de datos con php
y luego extraerla
pero al momento de extraerla me sale una X rojo
e probado con diferentes codigos, pero igual
si alguien me puede ayudar se lo agradeceria,
dejo el codigo que utilizo
*************fotos.php***********************
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>
<body>
<FORM ENCTYPE="multipart/form-data" ACTION="g_fotos.php" METHOD="post">
#con este input "oculto" establecemos el limite máximo
# del tamaño del fichero a transferir. En este ejemplo 350.000 bytes
<INPUT type="hidden" name="lim_tamano" value="350000">
<p>Selecciona la imagen a transferir<br>
<INPUT type="file" name="foto"><br>
<p>Título la imagen<br>
<INPUT type="text" name="titulo"><br></p>
Expediente: <input type="text" name="expediente" size="15" value="">
<p><INPUT type="submit" name="enviar" value="Aceptar"></p>
</FORM>
</body>
</html>
**********g_fotos.php******************
<body>
<?PHP
$expediente=$_POST['expediente'];
$foto_name= $_FILES['foto']['name'];
$foto_size= $_FILES['foto']['size'];
$foto_type= $_FILES['foto']['type'];
$foto_temporal= $_FILES['foto']['tmp_name'];
$lim_tamano= $_POST['lim_tamano'];
$foto_titulo= $_POST['titulo'];
/* limitamos los formatos de imagen admitidos a:
png que segun del navegador que ulicemos puede ser:
en IE image/x-png en Firefox y Mozilla image/png
jpg que puede tener como tipo
en IE image/pjpeg en Firefox y Mozilla image/jpeg
gif que tiene como tipo image/gif en todos los navegadores
Mira los comentarios al margen sobre la variable $extensión */
if ($foto_type=="image/x-png" OR $foto_type=="image/png"){
$extension="image/png";
}
if ($foto_type=="image/pjpeg" OR $foto_type=="image/jpeg"){
$extension="image/jpeg";
}
if ($foto_type=="image/gif" OR $foto_type=="image/gif"){
$extension="image/gif";
}
# condicionamos la inserción a que la foto tenga nombre,
# un tamaño distinto de cero y menor de límite establecido
# en el formulario y que la variable extensión sea no nula
if ($foto_name != "" AND $foto_size != 0
AND $foto_titulo !='' AND
$foto_size<=$lim_tamano AND $extension !=''){
/*reconversion de la imagen para meter en la tabla
abrimos el fichero temporal en modo
lectura "r" binaria"b"*/
$f1= fopen($foto_temporal,"rb");
#leemos el fichero completo limitando
# la lectura al tamaño de fichero
$foto_reconvertida = fread($f1, $foto_size);
#anteponemos \ a las comillas que pudiera contener el fichero
# para evitar que sean interpretadas como final de cadena
$foto_reconvertida=addslashes($foto_reconvertida);
# abrimos la base de datos y escribimos las intrucciones de inserción
# en el campo BLOB insertaremos la foto_reconvertida
$base="rinconastur";
//$imagen="fotos";
//$conexion=mysql_connect ("localhost","pepe","pepa");
//mysql_select_db ($base, $conexion);
//establece una conexión con la base de datos.
$conexion = mysql_connect("localhost","veterin3","04091975")
or die("Could not connect to database!");
mysql_select_db("veterin3_prueba")
or die("Could not select database!"); // tu_bd es el nombre de la Base de datos .. por siaca.
$query = "insert into `imagen` (`num_ident`,`expediente`,`imagen2`, `nombre`, `tamano`, `formato`) VALUES ('', '$expediente','$foto_reconvertida', '$foto_titulo', '$foto_size', '$extension')";
$result = mysql_query($query)
or die("ERROR AL INSERTAR REGISTRO:$query");
//$meter="INSERT INTO ".$imagen;
//$meter .=" (num_ind, imagen, nombre, tamano, formato) ";
//$meter .=" VALUES('','$foto_reconvertida','$foto_titulo',";
//$meter .= "$foto_size, '$extension')";
// if (@mysql_query($meter,$conexion)){
// print "Foto guardada en la tabla";
// }else{
// print "Ha habido un error al guardar la foto";
// }
}else{
echo "<h2>No ha podido transferirse el fichero</h2>";
}
mysql_close();
?>
</body>
</html
EN ESTE CODIGO ES EL QUE USO PARA EXTRAER LA FOTO
***********leerf.php********************
<body>
<?PHP
//$base="rinconastur";
//$tabla="fotos";
$link = mysql_connect("localhost","veterin3","04091975")
or die("Could not connect to database!");
mysql_select_db("veterin3_prueba")
or die("Could not select database!"); // tu_bd es el nombre de la Base de datos .. por siaca.
$resultado = mysql_query ("select * from imagen ")
or die ("No se pudo ejecutar la consulta1");
//$conexion=mysql_connect ("localhost","pepe","pepa");
//mysql_select_db ($base, $conexion);
//$sacar = "SELECT * FROM ".$tabla;
//$resultado = mysql_query($sacar,$conexion);
?>
<?PHP
while ($registro = mysql_fetch_array($resultado)){
print "<center>Titulo de la imagen: ".$registro['nombre']."<br>";
// echo '<img src="'.$registro['imagen2'].'"></img>';
print "<img src='http://www.veterinariagutierrez.com/ver_foto.php?n=".$registro['num_ident']."'><br></img>";
print "Tamaño de la imagen: ".$registro['tamano']." bytes</center>";
}
mysql_close();
?>
</body>
</html>
******************ver_foto.php*****************
<?
$id=$_REQUEST['n'];
//$numero=$_POST['n'];
//$base="rinconastur";
//$tabla="fotos";
echo "EXPEDIENTE2:". $numero . "<br>";
$link = mysql_connect("localhost","veterin3","04091975")
or die("Could not connect to database!");
mysql_select_db("veterin3_prueba")
or die("Could not select database!"); // tu_bd es el nombre de la Base de datos .. por siaca.
$resultado = mysql_query ("select * from imagen WHERE num_ident=$id ")
or die ("No se pudo ejecutar la consulta");
//$conexion=mysql_connect ("localhost","pepe","pepa");
//mysql_select_db ($base, $conexion);
// $sacar = "SELECT * FROM ".$tabla." WHERE (num_ident=$numero)" ;
//$resultado = mysql_query($sacar,$conexion);
while ($registro = mysql_fetch_array($resultado)){
$tipo_foto=$registro['formato'];
$tipo_foto=$rw['mime'];
header("Content-type: $tipo_foto");
//echo '<img src="' . $registro['imagen2'] . '"/>';
// echo <img src="http://localhost/" . $registro['imagen'] . >;
echo $registro['imagen2'];
}
mysql_close();
?>