Foros del Web » Programando para Internet » PHP »

Visualizar imagen después de cargarla(subirla a la web)

Estas en el tema de Visualizar imagen después de cargarla(subirla a la web) en el foro de PHP en Foros del Web. Hola a todos, soy nuevo aquí y nuevo en lo que es PHP... He encontrado uno script para subir archivos, modificado para cargar solo imágenes ...
  #1 (permalink)  
Antiguo 21/07/2011, 03:43
Avatar de psiloilmari  
Fecha de Ingreso: julio-2011
Ubicación: Valencia
Mensajes: 47
Antigüedad: 12 años, 9 meses
Puntos: 0
Pregunta Visualizar imagen después de cargarla(subirla a la web)

Hola a todos, soy nuevo aquí y nuevo en lo que es PHP...

He encontrado uno script para subir archivos, modificado para cargar solo imágenes JPEG, me funciona...

Ahora quisiera que después cargada la foto, se me muestre en pantalla..

aquí os dejo el código que tengo para subir....

<?
if($boton) {
if (is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name'])) {

if($HTTP_POST_FILES['archivo']['type']=="image/jpeg") {
copy($HTTP_POST_FILES['archivo']['tmp_name'], $HTTP_POST_FILES['archivo']['name']);
$subio = true;
}
}

if($subio) {
echo "El archivo subio con exito";
echo "<img src= AQUI TENGO PROBLEMAS NO SE QUE PONER !

} else {
echo "El archivo no cumple con las reglas establecidas";
}
die();
}
?>



<form action="<?=$PHP_SELF?>" method="post" enctype="multipart/form-data" name="form1">
<p align="center">Subir solamente imagen .JPG
<input name="archivo" type="file" id="archivo">
</p>
<p align="center"><input name="boton" type="submit" id="boton" value="Enviar"></p>
</form>


Re-acuerdo que estoy aprendiendo de forma autodidacta, os agradecería a tod@s ayudarme en los proximos pasos, Saludos y gracias !
  #2 (permalink)  
Antiguo 21/07/2011, 04:19
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

$HTTP_POST_FILES está obsoleto, en cualquier caso usa el ['archivo']['name'] como el src de la imagen.

Pero lo correcto es el uso del $_FILE y las funciones is_uploaded_file(), move_uploaded_file() y quizás si tienes problemas con los permisos chmod();

Si estás empezando con php lo mejor es que mires que estás haciendo en vez de copiar códigos sin saber que hacen esas variables o funciones.

Échale un ojo al manual de php
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #3 (permalink)  
Antiguo 21/07/2011, 04:50
 
Fecha de Ingreso: mayo-2010
Mensajes: 128
Antigüedad: 13 años, 10 meses
Puntos: 13
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Hombre ahí lo que tienes que poner es la ruta donde has guardado la foto que previamente has subido.
  #4 (permalink)  
Antiguo 21/07/2011, 04:52
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Cita:
Iniciado por mitrofan Ver Mensaje
Hombre ahí lo que tienes que poner es la ruta donde has guardado la foto que previamente has subido.
2+2=4

psiloilmari, cambia los $HTTP_POST_FILES por $_FILES y usa el $_FILES['archivo']['name']
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #5 (permalink)  
Antiguo 21/07/2011, 04:52
Avatar de psiloilmari  
Fecha de Ingreso: julio-2011
Ubicación: Valencia
Mensajes: 47
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Gracias IEKK por responderme.!!


Cita:
Iniciado por IEKK Ver Mensaje

Si estás empezando con php lo mejor es que mires que estás haciendo en vez de copiar códigos sin saber que hacen esas variables o funciones.

Échale un ojo al manual de php
Por ahí estoy, intenté leer o mejor intender lo que hacen estas funciones(las encontré en otra web) y simplemente quería añadirle lo de la visualización de la imagen...

Volveré a empezar desde aquí, y otra vez Gracias, ahora intento hacer lo que dijiste!
  #6 (permalink)  
Antiguo 21/07/2011, 04:58
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

El código no es que esté mal, sino que $HTTP_POST_FILES está obsoleta y en su lugar mejor usar $_FILE

http://php.net/manual/es/reserved.variables.files.php

En el manual tienes un ejemplo sencillito, ya después lo mejoras comprobando el tipo de la imagen el peso y esas cosas:

http://www.php.net/manual/es/functio...oaded-file.php
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #7 (permalink)  
Antiguo 21/07/2011, 05:42
Avatar de psiloilmari  
Fecha de Ingreso: julio-2011
Ubicación: Valencia
Mensajes: 47
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

he cambiado $HTTP_POST_FILES con $_FILE , pero lo que sale es :

El archivo subio con éxito y un cuadrado vacío con url a ruta/['archivo']['name'] osea no me visualiza nada.

el codigo es ahora así

Cita:
<?
if($boton) {
if (is_uploaded_file($_FILES['archivo']['tmp_name'])) {

if($_FILES['archivo']['type']=="image/jpeg") {
copy($_FILES['archivo']['tmp_name'], $_FILES['archivo']['name']);
$subio = true;
}
}

if($subio) {
echo "El archivo subio con exito";

echo "<img src=['archivo']['name']>";


} else {
echo "El archivo no cumple con las reglas establecidas";
}
die();
}
?>



<form action="<?=$PHP_SELF?>" method="post" enctype="multipart/form-data" name="form1">
<p align="center">Subir solamente imagen .JPG
<input name="archivo" type="file" id="archivo">
</p>
<p align="center"><input name="boton" type="submit" id="boton" value="Enviar"></p>
</form>
  #8 (permalink)  
Antiguo 21/07/2011, 05:46
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Te falta el $_FILE:
echo "<img src=" . $_FILE['archivo']['name'] . ">";
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #9 (permalink)  
Antiguo 22/07/2011, 02:28
Avatar de psiloilmari  
Fecha de Ingreso: julio-2011
Ubicación: Valencia
Mensajes: 47
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Cita:
Iniciado por vgonga1986 Ver Mensaje
Te falta el $_FILE:
echo "<img src=" . $_FILE['archivo']['name'] . ">";
Hola, en este caso en vez de visualizar la imagen , quiere visualizar la ruta/untitled-1.php que es el archivo donde he escrito el codigo.

ej.:
El archivo subio con exito "cuadrado" cual url de la imagen es igual a la ruta del mismo untitled-1.php como antes he dicho...
  #10 (permalink)  
Antiguo 22/07/2011, 03:10
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Estás segudo de que el fichero se ha copiado a la ruta destino?

Te lo digo porque no estás comprobando, pones $subio a true sin comprobar con if la función copy.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #11 (permalink)  
Antiguo 22/07/2011, 06:00
Avatar de psiloilmari  
Fecha de Ingreso: julio-2011
Ubicación: Valencia
Mensajes: 47
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Cita:
Iniciado por vgonga1986 Ver Mensaje
Estás segudo de que el fichero se ha copiado a la ruta destino?

Te lo digo porque no estás comprobando, pones $subio a true sin comprobar con if la función copy.

Un saludo.
Hola y Gracias, ante todo te aviso que estas hablando con un principiante autodidacta en PHP pero con "pasado" de programador en otros lenguajes antecedentes a los que tenemos hoy día , pero vamos en fin consigo entender..

Cita:
Estás segudo de que el fichero se ha copiado a la ruta destino?
Sí ,el fichero (imagen .JPG) (el nombre cambia según la imagen subida con su nombre claro) viene subido y queda en la ruta principal ej.: www.miprimeraweb.com/ enonces para verla voy a www.miprimeraweb.com/image.JPG

Cita:
Te lo digo porque no estás comprobando, pones $subio a true sin comprobar con if la función copy.
Voy a intentarlo o te pediré como escribirlo si hago algún error...

P.D.: Suelo usar Dreamweaver x conectarme al servidor, tener la vista previa etc, me he encontrado bien por lo que es HTML.. Si crees que deba usar x cuestiones técnicas otro programa por favor... avísame..

Gracias ! Salu2,Suerte y Salud !
  #12 (permalink)  
Antiguo 22/07/2011, 06:07
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Si yo es por eliminar posibles causas. De todas formas, para estar seguros del todo, al principio del trozo php pon un var_dump($_FILE); para que imprima el contenido de la variable, así vemos lo que se envía del form.

Para comprobar que el copy se ha hecho bien simplemente rodea con un if:
if (copy(...)) {
echo "Aquí se hizo bien";
} else {
echo "Aquí NO se hizo bien";
}

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #13 (permalink)  
Antiguo 24/07/2011, 13:39
Avatar de psiloilmari  
Fecha de Ingreso: julio-2011
Ubicación: Valencia
Mensajes: 47
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

yesss !!!

a proposito, no se como poner este var_dump($_FILE); pero ahora funciona y despues haber subido la imagen, viene visualizada !

aunque me parece raro este $copy=true ....

Cita:
<?
if($boton) {
if (is_uploaded_file($_FILES['archivo']['tmp_name'])) {

if($_FILES['archivo']['type']=="image/jpeg") {
copy($_FILES['archivo']['tmp_name'], $_FILES['archivo']['name']);
$subio = true;
$copy=true;
}
}

if($subio) {
echo "El archivo subio con exito";
if($copy) {
echo "<img src=".$_FILES['archivo']['name'];
}



} else {
echo "El archivo no cumple con las reglas establecidas";
}
die();
}
?>



<form action="<?=$PHP_SELF?>" method="post" enctype="multipart/form-data" name="form1">
<p align="center">Subir solamente imagen .JPG
<input name="archivo" type="file" id="archivo">
</p>
<p align="center"><input name="boton" type="submit" id="boton" value="Enviar"></p>
</form>
  #14 (permalink)  
Antiguo 26/07/2011, 05:45
Avatar de psiloilmari  
Fecha de Ingreso: julio-2011
Ubicación: Valencia
Mensajes: 47
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Como hago para salvar el archivo tmp en el servidor carpeta /photo ?
no quiero usar el ['archivo']['name'] pero el nombre tmp para guardarlo.

Gracias ! voy progresando !!
  #15 (permalink)  
Antiguo 26/07/2011, 08:35
(Desactivado)
 
Fecha de Ingreso: julio-2011
Mensajes: 74
Antigüedad: 12 años, 9 meses
Puntos: 4
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Ya estan dandole larga a estos temas busca la function copy en el manual de php.net y omite el error con @antes de lafunction copy es copy(ruta,archivo)
  #16 (permalink)  
Antiguo 26/07/2011, 09:50
Avatar de psiloilmari  
Fecha de Ingreso: julio-2011
Ubicación: Valencia
Mensajes: 47
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

Cita:
Iniciado por maco8899 Ver Mensaje
Ya estan dandole larga a estos temas busca la function copy en el manual de php.net y omite el error con @antes de lafunction copy es copy(ruta,archivo)
Gracias y perdoname donde y como pongo @ ? Puedes hacerme un ejemplo ?
  #17 (permalink)  
Antiguo 26/07/2011, 13:37
(Desactivado)
 
Fecha de Ingreso: julio-2011
Mensajes: 74
Antigüedad: 12 años, 9 meses
Puntos: 4
Respuesta: Visualizar imagen después de cargarla(subirla a la web)

la arroba antes por que si no te da warning error @copy("carpeta",$archivo) no te olvides de poner permisos 777 en la carpeta de tu servidor eso me dio muchos dolores de cabeza y bueno en local no tendrias problemas.

Etiquetas: Ninguno
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 10:11.