Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/10/2008, 19:41
franjgg
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 2 meses
Puntos: 4
codigo guarda variables en txt (no muestra la image)

Hola como estan todos.

Mirad mi cuestion es la siguiente:

1º tengo un formulario que envia dos valores a un php que guarda los datos en un txt

formulario:

<script>
function ver(image){
document.getElementById('image').innerHTML = "<img src='"+image+"'>"
}
</script>

<form action="guarda-datos.php" method="post" enctype="multipart/form-data">
<center>
<table border="1">
<tr>
<td><center>

DESCRIPCION<input name="na" type="text"><br>
IMAGEN<input name="files" type="file" onChange="ver(form.file.value)"><br>
<input name="submit" type="submit" value="Upload!">
</center></td>
</tr>
</table>
</center>
</form>


2º el codigo php que guarda dos variables en el txt, una es una cadena de texto y otra es la ruta de la imagen:

if($_POST){
// Creamos la cadena aletoria
$str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvw xyz1234567890";
$cad = "";
for($i=0;$i<12;$i++) {
$cad .= substr($str,rand(0,62),1);
}
// Fin de la creacion de la cadena aletoria
$tamano = $_FILES [ 'files' ][ 'size' ]; // Leemos el tamaño del fichero
$tamaño_max="50000000000"; // Tamaño maximo permitido
if( $tamano < $tamaño_max){ // Comprovamos el tamaño
$destino = 'uploaded' ; // Carpeta donde se guardata
$sep=explode('image/',$_FILES["files"]["type"]); // Separamos image/
$tipo=$sep[1]; // Optenemos el tipo de imagen que es
if($tipo == "gif" || $tipo == "jpeg" || $tipo == "bmp"){ // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen
move_uploaded_file ( $_FILES [ 'files' ][ 'tmp_name' ], $destino . '/' .$cad.'.'.$tipo); // Subimos el archivo
include('mostrar-txt.php'); // Incluimos la plantilla
}
else echo "el tipo de archivo no es de los permitidos";// Si no es el tipo permitido lo desimos
}
else echo "El archivo supera el peso permitido.";// Si supera el tamaño de permitido lo desimos
}


$archivo = fopen('datos.txt', 'a');
// Creamos la cadena aletoria
$cadena = $destino . '/' .$cad.'.'.$tipo;
fwrite( $archivo, "$na $cadena \n");
fclose( $archivo );

3º es un archivo que lee del txt y muestra su contenido:

<?php

$ar=fopen("datos.txt","r") or
die("No se pudo abrir el archivo");
while (!feof($ar))
{
$name=fgets($ar);
echo "<table style='width:47%; border:solid 5px green; float:left; margin:10px 0px 10px 15px;'>\n";
echo "<tr>\n";
echo "<td>\n";
echo "<center>";
echo $name;
echo "<img src='$cadena'>";
echo "</center>";
echo "</td>\n";
echo "</tr>\n";
echo "</table>\n";
}
fclose($ar);
?>

el problema es que en vez de motrar la imagen muestra la ruta de la imagen, creo que el problema podria estar en esta parte

$cadena = $destino . '/' .$cad.'.'.$tipo;
fwrite( $archivo, "$na $cadena \n");

donde une las variables "destino" que es la ruta donde guarda la imagen "cad" nombre de la imagen "tipo" el tipo de imagen, que despues muestra el 3º archivo, pero en realidad solo muestra la ruta.

¿Alguien sabria que esta sucediendo?