Foros del Web » Programando para Internet » PHP »

Campo "file" vacio en formulario ?

Estas en el tema de Campo "file" vacio en formulario ? en el foro de PHP en Foros del Web. Hola a todos, mi pregunta es sencilla, como puedo hacer que solo se actualice el enlace de la base de datos de un archivo, si ...
  #1 (permalink)  
Antiguo 31/12/2006, 18:41
.:Chimera:.
Invitado
 
Mensajes: n/a
Puntos:
Exclamación Campo "file" vacio en formulario ?

Hola a todos, mi pregunta es sencilla, como puedo hacer que solo se actualice el enlace de la base de datos de un archivo, si el campo "file" con nombre "imagen" no está vacio.

Es decir, que solo se cambie la imagen si se ha subido una nueva, y si no se sube nada se quede como está!!

Mi formulario es algo así:
Código:
<form method="POST" enctype="multipart/form-data">
<input type="file" name="imagen">
<input type="submit" value="Enviar">
</form>
Y lo he intentado con este pequeño if, en PHP pero no me funciona, si dejas el campo vacio, la imagen anterior desaparece !!!!:

Código PHP:
if(!empty($_FILES['imagen']['tmp_name'])){
  
$target_path1 "../concesionario/";
  
$_FILES['imagen']['tmp_name']; 
  
$target_path $target_path1 basename$_FILES['imagen']['name']);
  
move_uploaded_file($_FILES['imagen']['tmp_name'], $target_path);  
  
$imagen"$target_path";
  
mysql_query("update concesionario set imagen='$imagen' where id=$id",$c);
  } 


AYUDA PLEASE, seguro que es un error tonto, XD!!!!

Última edición por .:Chimera:.; 31/12/2006 a las 18:54
  #2 (permalink)  
Antiguo 31/12/2006, 22:46
Avatar de vevni  
Fecha de Ingreso: julio-2005
Ubicación: cancun mexico
Mensajes: 598
Antigüedad: 18 años, 9 meses
Puntos: 3
Re: Campo "file" vacio en formulario ?

eso es relativamente sencillo

usa is_uploaded_file() el cual verifica si se ah suvido un archivo... ya despues.
pues haces lo que tengas que hacer, regresara si el nombre que pasas como argumentos se suvio.....

aqui tienes mas descripcion
http://www.php.net/manual/es/functio...oaded-file.php
__________________
Código PHP:
echo"hola mundo ver 1221332143.02";
echo
"cuantos usuarios habran impreso hola mundo en el mundo.!???"
  #3 (permalink)  
Antiguo 01/01/2007, 17:05
fiu
 
Fecha de Ingreso: diciembre-2006
Ubicación: Barcelona
Mensajes: 128
Antigüedad: 17 años, 3 meses
Puntos: 8
Re: Campo "file" vacio en formulario ?

Y no funcionaria comprobando directamente el nombre?
if ($_FILES['imagen']['name'])
o
if (isset($_FILES['imagen']['name']))
o
if ($_FILES['imagen']['name']!="")
  #4 (permalink)  
Antiguo 01/01/2007, 17:08
Avatar de vevni  
Fecha de Ingreso: julio-2005
Ubicación: cancun mexico
Mensajes: 598
Antigüedad: 18 años, 9 meses
Puntos: 3
Re: Campo "file" vacio en formulario ?

no se muy bien como maneja php las cosas del lado servidor,
= y puede contener basura los arreglos, = y hay datos, errones que se yo, pero la funcion que te puse, verifica que se haya subido lo que pusiste y si te das cuenta en el manual asi lo usan ellos.! nunca te confiees directamente de las variables.!
__________________
Código PHP:
echo"hola mundo ver 1221332143.02";
echo
"cuantos usuarios habran impreso hola mundo en el mundo.!???"
  #5 (permalink)  
Antiguo 01/01/2007, 17:18
fiu
 
Fecha de Ingreso: diciembre-2006
Ubicación: Barcelona
Mensajes: 128
Antigüedad: 17 años, 3 meses
Puntos: 8
Re: Campo "file" vacio en formulario ?

siempre que haya una función que haga lo que necesitas, sin duda es mejor usarla, para algo la han puesto xD. Lo que yo he puesto era siguendo el patrón usado por él. Y si alguna vez pido obligatoriamente una foto con eso me ha funcionado. Sabiendo que hay una función la usaré :P
Es que no entiendo porque usa el temporal.
  #6 (permalink)  
Antiguo 02/01/2007, 07:51
.:Chimera:.
Invitado
 
Mensajes: n/a
Puntos:
Re: Campo "file" vacio en formulario ?

Pues no me funciona como tu dices, pero lo he corregido, el codigo que puse en el primer mensaje me funciona perfectamente !!

Creo que is_upload_file() solo devuelve el nombre del archivo, pero no si es un archivo oes un "vacio" , lo digo porque aún dejando el campo file en blanco, esa función te devuelve un resultado.

Gracias de todos modos !!

SAlu2

PD: Uso el temporal porque quiero que lo compruebe ahí, antes de mover nada.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:21.