Foros del Web » Programando para Internet » PHP »

Subir fotos con php

Estas en el tema de Subir fotos con php en el foro de PHP en Foros del Web. Que tal!! Quiero subir fotos a traves de php de la siguiente manera: tengo un cuadro de texto y un boton llamado examinar.... quiero que ...
  #1 (permalink)  
Antiguo 05/02/2009, 07:04
 
Fecha de Ingreso: diciembre-2007
Mensajes: 38
Antigüedad: 16 años, 4 meses
Puntos: 0
Subir fotos con php

Que tal!!
Quiero subir fotos a traves de php de la siguiente manera:
tengo un cuadro de texto y un boton llamado examinar....
quiero que al presionar el boton se me abra una ventana para buscar el archivo en disco c o en cualquier otro disco.
Y que al abrir el archivo, me coloque en el cuadro de texto solo la ruta de ese archivo.
¿Se podria hacer asi?
¿Alguien me podria facilitar algun ejemplo?, se los agradeceria enormemente
  #2 (permalink)  
Antiguo 05/02/2009, 07:58
Avatar de acumulador  
Fecha de Ingreso: junio-2008
Ubicación: Medellin - Antiquia
Mensajes: 459
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Subir fotos con php

Esto es precisamente lo que necesitabas:
//esto va al iniciar la pagina php
$status = "";
if ($_POST["action"] == "reg") {
// obtenemos los datos del archivo
$tamano = $_FILES["archivo"]['size'];
$tipo = $_FILES["avantar"]['type'];
$archivo = $_FILES["avantar"]['name'];

if ($archivo != "") {
// guardamos el archivo a la carpeta files, pero vos podes cambiar la ruta por la queras en la variable $destino
$destino = "files_us/".$archivo;
if (copy($_FILES['avantar']['tmp_name'],$destino)) {
//es por que ya el archivo se subio al servidor
$status="archivo subido";
}else{
$status="error al subir el archivo";
}
esto va en el html, es el formulario:
<form action="mismapagina.php" method="post" enctype="multipart/form-data">
//este es el tipo de control para examinar y subri archivos
<input type="file" name="avantar" id="avantar" />
//este es un campo oculto para activar el codigo php
<input name="action" type="hidden" value="reg" />
<input type="submit" name="button" id="button" value="Subir archivo" />
</form>

Espero si te sirva. Suerte
__________________
-----------------------------------------------------------------------------
Yo vivo de preguntar, saber no puede ser lujo...
  #3 (permalink)  
Antiguo 05/02/2009, 09:05
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Subir fotos con php

Cita:
Iniciado por francia0604 Ver Mensaje
Que tal!!
Quiero subir fotos a traves de php de la siguiente manera:
tengo un cuadro de texto y un boton llamado examinar....
quiero que al presionar el boton se me abra una ventana para buscar el archivo en disco c o en cualquier otro disco.
Y que al abrir el archivo, me coloque en el cuadro de texto solo la ruta de ese archivo.
¿Se podria hacer asi?
¿Alguien me podria facilitar algun ejemplo?, se los agradeceria enormemente
No entiendo tu duda, quieres guardar SOLO la ruta, pero no subir el archivo?
  #4 (permalink)  
Antiguo 05/02/2009, 12:42
 
Fecha de Ingreso: diciembre-2007
Mensajes: 38
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Subir fotos con php

Hola acumulador, gracias por tu respuesta, es exactamente lo que quiero, sin embargo me da un error en la linea 6 la cual es:$tamano = $_FILES["archivo"]["size"]; y no se muy bien a que se deba, de todas formas aqui esta de nuevo el codigo:
Código PHP:
<?php
//esto va al iniciar la pagina php
$status "";
if (
$_POST["action"] == "reg") {
// obtenemos los datos del archivo 
$tamano $_FILES["archivo"]["size"];
$tipo $_FILES["avantar"]['type'];
$archivo $_FILES["avantar"]['name'];
}
if (
$archivo != "") {
// guardamos el archivo a la carpeta files, pero vos podes cambiar la ruta por la queras en la variable $destino
$destino "C:\wamp\www\control_estudios\images".$archivo;
}
if (
copy($_FILES["avantar"]["tmp_name"],$destino)) {
//es por que ya el archivo se subio al servidor
$status="archivo subido";
}else{
$status="error al subir el archivo";
}
?>
Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>fotos</title>
</head>
<body>
<!--esto va en el html, es el formulario:-->
<form action="fotos.php" method="post" enctype="multipart/form-data">
<!--este es el tipo de control para examinar y subri archivos-->
<input type="file" name="avantar" id="avantar"/>
<!--este es un campo oculto para activar el codigo php-->
<input name="action" type="hidden" value="reg"/>
<input type="submit" name="button" id="button" value="Subir archivo"/>
</form>
</body>
</html> 
Agradeceria mucho tu respuesta
  #5 (permalink)  
Antiguo 05/02/2009, 12:46
 
Fecha de Ingreso: diciembre-2007
Mensajes: 38
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Subir fotos con php

disculpa, aqui esta el error que me da:
Notice: Undefined index: archivo in C:\wamp\www\control_estudios\fotos.php on line 6
  #6 (permalink)  
Antiguo 05/02/2009, 13:47
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Subir fotos con php

Cambia la palabra archivo, por avantar.
  #7 (permalink)  
Antiguo 05/02/2009, 17:06
 
Fecha de Ingreso: diciembre-2007
Mensajes: 38
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Subir fotos con php

Gracias Ronruby, era justo lo que faltaba.
  #8 (permalink)  
Antiguo 05/02/2009, 18:31
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: Subir fotos con php

francia0604:

Para mejorar tu codigo, podrias
incluir
if(is_uploaded_file(....)) { }
Para asegurarte que la subida fue exitosa,
de esta manera si la subida falla, puedes
darle una salida al codigo sin errores;
en cambio como lo tienes, de fallar alguna subida
el codigo te va a generar varios errores.
Asimismo, en vez de copy() creo es mejor
utilizar move_uploaded_file().
Ya que copy simplemente copia, en cambio
move lo mueve en su totalidad.

Saludos
franco
P.S. Aqui en el foro hay estandares bien definidos y muy buenos para reslizar la funcion que deseas.
Creo estan en las FAQ.
P.S2 qui encontre esto que esta bien claro y definido solo para copiarlo;
http://www.forosdelweb.com/f18/faqs-...00/#post249389

Última edición por franco190453; 05/02/2009 a las 18:37
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 03:40.