Foros del Web » Programando para Internet » PHP »

Imagen en formulario

Estas en el tema de Imagen en formulario en el foro de PHP en Foros del Web. Código HTML: <form enctype= "multipart/form-data" name= "form2" id= "form2" method= "post" action= "" > Nombre: <input name= "nombre" type= "text" > Foto: <input name= "html_file" ...
  #1 (permalink)  
Antiguo 16/04/2009, 11:49
 
Fecha de Ingreso: septiembre-2008
Mensajes: 211
Antigüedad: 15 años, 7 meses
Puntos: 2
Imagen en formulario

Código HTML:
<form enctype="multipart/form-data" name="form2" id="form2" method="post" action="">
Nombre:   <input name="nombre" type="text">
Foto: <input name="html_file" type="file">[/PHP]
<input type="submit" name="submit" value="submit">
</form> 
Código PHP:
<? 

$imagen
$_POST[html_file];
if (
$imagen == NULL){ echo "No hay ninguna imagen"; }

?>
Porque esto no me lo detecta? Alguien sabe como hacer para que sepa cuando alguien pone una imagen en el input?


Gracias!
  #2 (permalink)  
Antiguo 16/04/2009, 11:52
 
Fecha de Ingreso: agosto-2005
Mensajes: 126
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Imagen en formulario

uala! yo tambien tuve esta duda!
Resuelvenla porfaaa
__________________
idrojsnop

"Hi ha gent a qui no agrada que es parle, s’escriga o es pense en català.
És la mateixa gent a qui no els agrada que es parle, s’escriga o es pense."


Ovidi Montllor

|¡*¡| INDEPENDÈNCIA |¡*¡|
  #3 (permalink)  
Antiguo 16/04/2009, 11:56
 
Fecha de Ingreso: marzo-2009
Mensajes: 65
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Imagen en formulario

es porque no se usa $_POST para los archivos si no $_FILES


Código PHP:

$imagen 
$_FILES['html_file']['name']; //El nombre original del fichero en la máquina cliente. 
$tipo $_FILES['html_file']['type']; //El tipo mime del fichero (si el navegador lo proporciona). Un ejemplo podría ser "image/gif". 
$size $_FILES['html_file']['size']; //El tamaño en bytes del fichero recibido
$im $_FILES['html_file']['mp_name']; //El nombre del fichero temporal que se utiliza para almacenar en el servidor el archivo recibido. 

if ($imagen == NULL){ echo "No hay ninguna imagen"; } 

php.net/manual/es/features.file-upload.post-method.php

Última edición por elprogra; 16/04/2009 a las 12:02
  #4 (permalink)  
Antiguo 16/04/2009, 12:03
 
Fecha de Ingreso: septiembre-2008
Mensajes: 211
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Imagen en formulario

Con $_FILES sigue sin funcionar...:S
  #5 (permalink)  
Antiguo 16/04/2009, 12:05
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Imagen en formulario

Haz un var_dump($_FILES) para que veas que datos tiene.

Saludos.
  #6 (permalink)  
Antiguo 16/04/2009, 12:07
 
Fecha de Ingreso: septiembre-2008
Mensajes: 211
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Imagen en formulario

array(0) { } Me sale estoO!
  #7 (permalink)  
Antiguo 16/04/2009, 12:08
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Imagen en formulario

¿seguro enviaste el formulario antes??

¿tiene el enctype correcto???

¿el método si es post??

es muy difícil que algo tan estándar falle con algunos... de veras !


por favor, si tienen dudas... consulten el manual de PHP

http://www.php.net/features.file-upload
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 16/04/2009, 12:08
 
Fecha de Ingreso: septiembre-2008
Mensajes: 211
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Imagen en formulario

Perdon ahora puse esto:

echo var_dump($_FILES[html_file]);

I me sale: NULL
  #9 (permalink)  
Antiguo 16/04/2009, 12:10
 
Fecha de Ingreso: marzo-2009
Mensajes: 65
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Imagen en formulario

tal vez estas subiendo un archivo muy pesado, la configuracion por default del php.ini creo son como 8MB revisa eso a la mejor por ahi va la cosa
  #10 (permalink)  
Antiguo 16/04/2009, 12:12
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Imagen en formulario

Código PHP:
<?php
var_dump
($_FILES);
?>

<form enctype="multipart/form-data" method="post" action="">
<input name="archivo" type="file"/>
<input type="submit"/>
</form>
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 16/04/2009, 12:14
 
Fecha de Ingreso: septiembre-2008
Mensajes: 211
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Imagen en formulario

No no que va, si no estoy subiendo, es decir la cosa va asii en el formulario cuando alguien sube todo con la imagen, se guarda en la base de datos el nombre con $time() y en la carpeta imatges se guarda la imagen con el nuevo nombre.

Cuando alguien NO SUBE una imagen en la base de datos no tendria que guardar ningun nombre time(), hay dos comandos SQL, una en la que introduce el time y otra en la que no, con el

if($imagen == NULL){ introduzco, nombre apellido...etc SIN IMAGEN}
else{ introduzco, nombre, apellido,...etc CON IMAGEN}

El problema esta en que SIEMPRE salta a ELSE, como si la condicion de IF fuera falsa aunque no haya imagen.
  #12 (permalink)  
Antiguo 16/04/2009, 12:18
 
Fecha de Ingreso: marzo-2009
Mensajes: 65
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Imagen en formulario

O_o aaaaaaaaaaaaaam

prueba con $imagen == '' o con if(empty($imagen)) .... etc, etc

hay muchas formas de ver si un campo tiene contenido ...
  #13 (permalink)  
Antiguo 16/04/2009, 12:19
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Imagen en formulario

revisa este tema.... por favor

http://www.forosdelweb.com/f18/actua...imagen-690108/
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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 11:43.