
27/08/2008, 18:42
|
 | | | Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 16 años, 7 meses Puntos: 15 | |
Mostrar imagen con ruta guardada en mysql Hola Amigos:
Ya he caminado todo el google y el foro pero no consigo como resolver esto. Tengo un código para guardar la ruta de una imagen en una tabla mysql y a su vez guardarla imagen en una carpeta que se llama foto y que está al mismo nivel que mis archivos donde está el formulario que tiene el file y el archivo que guarda los datos.
Este es mi form:
<form action="cargando.php" method="post" enctype="multipart/form-data" name="form1">
<table width="586" border="0" cellspacing="0" cellpadding="0">
<tr>
<th colspan="2" scope="row"><span class="Estilo4">Cargar Productos </span></th>
</tr>
<tr>
<th width="176" scope="row"><div align="justify" class="Estilo4 Estilo5">Nombre del Producto: </div></th>
<td width="410"><input name="textfield" type="text" size="50"></td>
</tr>
<tr>
<th scope="row"><div align="justify" class="Estilo4">Descripción:</div></th>
<td><textarea name="textarea" cols="40"></textarea></td>
</tr>
<tr>
<th scope="row"><div align="justify" class="Estilo4">Tallas:</div></th>
<td> </td>
</tr>
<tr>
<th scope="row"><div align="justify" class="Estilo4">Cantidad:</div></th>
<td><input name="textfield2" type="text" size="5"></td>
</tr>
<tr>
<th scope="row"><div align="justify" class="Estilo4">Precio:</div></th>
<td><input name="nombre" type="text" id="nombre"></td>
</tr>
<tr>
<th scope="row"><div align="justify" class="Estilo4">Foto:</div></th>
<td><input type="file" name="foto" id="foto"></td>
</tr>
<tr>
<th scope="row"><div align="justify"></div></th>
<td><input type="submit" name="Submit" value="Enviar"></td>
</tr>
<tr>
<th scope="row"><div align="justify"></div></th>
<td> </td>
</tr>
<tr>
<th scope="row"><div align="justify"></div></th>
<td> </td>
</tr>
</table>
Y el archivo cargando es asi:
<?
session_start();
// incluye los archivos de función para esta aplicación
require_once("../config.php");
//Recibo los datos que vienen por post
$archivo = $_FILES['foto']['name'];
$conex = db_connect();
if (!$conex)
return 0;
//Ahora rescatar el id del registro insertado con la funcion mysql_insert_id()
$id = mysql_insert_id();
//Generar el nuevo nombre para la imagen, asociado con el id del registro, para luego moverla a su posicion final
$nuevo_nombre = ( string ) $id. "_" .$_FILES['foto']['name'];
//Con la funcion move_uploaded_file mover el archivo a su posicion final, ojo con las rutas
move_uploaded_file($_FILES['foto']['tmp_name'], "fotos/$nuevo_nombre");
//Insercion de los datos, ojo la imagen se graba con su nombre original en la tabla (es un campo varchar)
$sql_ins = "INSERT INTO foto VALUES ('','$archivo')";
$res = mysql_query($sql_ins) or die ( "Error MySQL dice: " . mysql_error() );
?>
Esto me hace el trabajo pero quisiera saber:
1) como valido que sea una imagen gif, jpeg y jpg
2) Que tenga x tamaño
3) Como la recupero para mostrarla
tengo el archivo mostrar.php asi y se que está malo.
<?
session_start();
// incluye los archivos de función para esta aplicación
require_once("../config.php");
$conex = db_connect();
if (!$conex)
return 0;
$sql = "SELECT * FROM fotos";
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
//mostrar la imagen
echo <img src="<? $row["ruta"] ?>;">;
?>
y me da el siguiente error Parse error: parse error, unexpected '<', expecting ',' or ';' in c:\appserv\www\phpmyadmin\probando\mostrar.php on line 12
Por favor ayudenme a resolver esto pues tengo dos días en ello y mi proyecto se atrasa. Estoy suuuuuper enredada!!!
Gracias a todos |