Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Saber si la variable $FILES[['archivos']['tmp_name'] está vacía

Estas en el tema de Saber si la variable $FILES[['archivos']['tmp_name'] está vacía en el foro de PHP en Foros del Web. Buenas noches, quisiera consultar con ustedes lo siguiente... Tengo un formulario de actualización, que incluye poder subir archivos, sin embargo es válido para mi que ...
  #1 (permalink)  
Antiguo 23/04/2015, 21:02
Avatar de paula23andrea  
Fecha de Ingreso: noviembre-2012
Mensajes: 38
Antigüedad: 12 años, 1 mes
Puntos: 1
Pregunta Saber si la variable $FILES[['archivos']['tmp_name'] está vacía

Buenas noches, quisiera consultar con ustedes lo siguiente...

Tengo un formulario de actualización, que incluye poder subir archivos, sin embargo es válido para mi que no se suba ningún archivo y se envíe el formulario. Entonces cuando proceso los datos del formulario he intentado condicionar la parte del código que hace la subida de archivos, para evitar generar error en el copy si no se subieron archivos, he intentado con isset, count, empty, sizeof y nada me da una solución. Agradezco si alguien sabe de algún método que me pueda ayudar a condicionar esto.

Código PHP:
Ver original
  1. if(count($_FILES['archivos']['tmp_name'])>0) // Condicional que no sirve :(
  2. {
  3. foreach ($_FILES['archivos']['tmp_name'] as $file) {
  4.   copy($file, "../Albumes/$carp/" . $count.".jpg");
  5.   $ruta="Albumes/$carp/" . $count.".jpg";
  6.   $resultado2= mysql_query("INSERT INTO Foto (ruta, albumId) VALUES ('$ruta', $album)", $conexion) or die ("Problemas en la consulta inserción foto:  ".mysql_error());
  7.   $count++;
  8. }
  9. }
  #2 (permalink)  
Antiguo 23/04/2015, 21:08
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 10 meses
Puntos: 177
Respuesta: Saber si la variable $FILES[['archivos']['tmp_name'] está vacía

probaste con empty ?

Código PHP:
Ver original
  1. if(!empty($_FILES['archivos']['tmp_name']))
  #3 (permalink)  
Antiguo 23/04/2015, 21:52
Avatar de GeniosWeb  
Fecha de Ingreso: abril-2015
Ubicación: Mar del Plata
Mensajes: 50
Antigüedad: 9 años, 8 meses
Puntos: 3
Respuesta: Saber si la variable $FILES[['archivos']['tmp_name'] está vacía

Creo que lo que necesitas es if( count($_FILES['archivos']) )
Ahora no lo puedo probar, pero contame si te funciona, yo lo he usado asi o muy parecido y me ha funcionado, si no era asi decime que lo busco bien y te lo paso
  #4 (permalink)  
Antiguo 24/04/2015, 07:47
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 5 meses
Puntos: 379
Respuesta: Saber si la variable $FILES[['archivos']['tmp_name'] está vacía

Código PHP:
Ver original
  1. if (isset($_FILES['archivos') === false) {
  2.            //lo que requieras
  3.         }
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #5 (permalink)  
Antiguo 24/04/2015, 12:20
Avatar de paula23andrea  
Fecha de Ingreso: noviembre-2012
Mensajes: 38
Antigüedad: 12 años, 1 mes
Puntos: 1
Respuesta: Saber si la variable $FILES[['archivos']['tmp_name'] está vacía

Ya lo arreglé con el isset==false, lo cual me sorprende ya que en las ocasiones en que uso isset simplemente llamo la función y no hago comparación con false.

Agradezco a todos por sus respuestas!!
  #6 (permalink)  
Antiguo 24/04/2015, 12:46
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 10 meses
Puntos: 177
Respuesta: Saber si la variable $FILES[['archivos']['tmp_name'] está vacía

no hace falta poner ===, isset significa si está seteada la variable, por lo tanto

Código PHP:
Ver original
  1. if (isset($_FILES['archivos')) {
  2.            //lo que requieras, la variable existe
  3.  
  4. }else{
  5.          //la variable no esta seteada o no existe
  6. }

Etiquetas: asociativo, file, funcion, input, vector
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 00:11.