Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/01/2009, 15:57
sukh
 
Fecha de Ingreso: octubre-2008
Mensajes: 9
Antigüedad: 15 años, 6 meses
Puntos: 0
Subida de imágenes con php

¡ Hola a todos ! Ante todo es un placer oír vuestras recomendaciones, sin vosotros, muchos de mis "trabajos" hubieran sido mas difíciles si no imposibles.

Tengo un pequeño problema, a ver si algún gurú de por aquí supiera respondermelo.
El caso es que estoy gestionando una BD con php y mysql.
Los datos se introducen a través de un form e incluyen un nombre y una foto que serán almacenados en la BD. Si, se que no es buena idea meter fotos en un BD pero debo de hacerlo así es un requerimiento.
Bueno ante todo señalar que accedo a la página a través de localhost . El sistema que estoy utilizando es GNU/Linux.

Bien, la foto la inserta cuando utilizo Konqueror ( ya que coge la ruta completa a la imagen) , sin embargo con Firefox la foto no sube.
Os adjunto el código:

FORM:

<form name="inserta" action="insert.php" method="post">
Nombre:<br>
<input type="text" size="30" name="nombre"><br><br>
Archivo de la foto: (opcional)<br>
<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
<input type="file" size="35" name="foto"><br><br>
<center><input type="button" onclick="validar()" value="Enviar"></center>
</form>

* Validar solo es un pequeño script que se asegura de que todos los campos estén rellenos, despues llama a submit();

PHP:

$fotnam=$_FILE['foto']['tmp_name'];
$fil=fopen($fotnam,"r");
if ( !$fil )include("error.php");
$foto=addslashes(fread($fil,filesize($fotnam)));
$query="insert into ".$_REQUEST['tabla']."(Nombre,Foto) values('".$_REQUEST['nombre']."','".$foto."')";
$res=mysql_query($query);

Si sustituyo ['tmp_name'] por ['name'] sigue sin funcionar.
Recalco que bajo Konqueror si funciona, pero no con Firefox.
Haciendo un echo el tmp_name y en name, ambos aparecen sin valor ninguno.
Si, php está configurado para permitir subir archivos, me "he asegurado" , si no ¿como es que si funciona en Konqueror?.

¿En qué me estoy equivocando?
Si utilizo is_file_upload sigue sin funcionar.
¡Gracias!