Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Diseño web | Promoción web | Ganar dinero
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo
ARTICULO: Upload de archivos con PHP

 Se muestran 15 comentarios sin revisar

Leonardo Lux  03/11/07 
Pueden encontrar una manera más actualizada de subir archivos en:

http://cl2.php.net/manual/es/features.file-upload.php

(por ejemplo, los arreglos $HTTP_POST_FILES están desactualizados en PHP5. Siempre vean la documentación en php.net).

ruben  07/11/07 
Hola tengo un problema y es que puedo subir imagenes, pero no videos ni zip, ni nada, no se si es porque estoy trabajando en localhost y hayq cambiar algo en algun .conf o algo, o bien porque mi codigo esta mal, por favor a ver si alguién me lo puede decir. muchas gracias por anticipado.


$HTTP_POST_FILES['userfile']['name'] ;
$HTTP_POST_FILES['userfile']['type'] ;
$HTTP_POST_FILES['userfile']['size'] ;
$HTTP_POST_FILES['userfile']['tmp_name'];

$idusuario= $datos[0];

//tomo el valor de un elemento de tipo texto del formulario
$cadenatexto = $_POST["cadenatexto"];
echo "Escribió en el campo de texto: " . $cadenatexto . "<br><br>";
echo "elidusuarioes:" . $idusuario . "<br><br>";

//datos del arhivo
$nombre_archivo = $HTTP_POST_FILES['userfile']['name'];
$tipo_archivo = $HTTP_POST_FILES['userfile']['type'];
$tamano_archivo = $HTTP_POST_FILES['userfile']['size'];

echo "tamaño:" . $HTTP_POST_FILES['userfile']['size'] . "<br><br>";
echo "tamaño:" . $tamaño_archivo . "<br><br>";
echo "tipo:" . $HTTP_POST_FILES['userfile']['type'] . "<br><br>";
echo "tipo:" . $tipo_archivo . "<br><br>";

//compruebo si las características del archivo son las que deseo
if (!((strpos($tipo_archivo, "jpeg") || strpos($tipo_archivo, "jpg") || strpos($tipo_archivo, "zip") || strpos($tipo_archivo, "png") || strpos($tipo_archivo, "avi")|| strpos($tipo_archivo, "gif")) && ($tamano_archivo < 2000000000))) {
echo "La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos .gif o .jpg<br><li>se permiten archivos de 20mg máximo.</td></tr></table>";
}else{
if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $nombre_archivo)){


mysql_query("INSERT INTO videos(titulo,usuarioid,votos,nombreFichero,fechaSubida) VALUES('$cadenatexto','$idusuario','0','$nombre_archivo',CURRENT_DATE) ") or die('Error al actualizar la BBDD');



echo "El archivo ha sido cargado correctamente.";
}else{
echo "Ocurrió algún error al subir el fichero. No pudo guardarse.";
}
}

Eduardo  11/12/07 
Bueno, yo he probado el codigo tal cual esta en el comienzo de la pagina y no me da problemas ninguno. Lo que me gustaria saber es como puedo cambiar el nombre del fichero que el usuario sube para ponerle el que yo tenga almacenado en una variable como una serie numerica. Gracias.

Ronald  24/12/07 
Muchas graciaaaaaaaaaaaaaaaaas, he sufrido, pero ya funciona, me dio buenas pistas, el amigo que dijo "de seguro que se chingan el error", jeje, que bonita expresion, solo espero que no sea una groceria.
Saludos.

Melchor  19/1/08 
Lo del error que comenta imm.xxx realmente se soluciona con un chmod al directorio donde se localizan los .php, bueno

DoLpHiN  20/3/08 
Yo estoy intentando de hacer lo mismo mpero con archivos de audio, en concreto, archivos "rbs"; mi c´odigo es ´este:

<?php
$nombre_archivo = $HTTP_POST_FILES["file"]["name"];
$tipo_archivo = $HTTP_POST_FILES["file"]["type"];
$tamano_archivo = $HTTP_POST_FILES["file"]["size"];

if (!strpos($tipo_archivo, "rbs"))
{
echo "El archivo no cumple los requisitos<br>";
}
else
{
copy($_FILES['cancion']['tmp_name'],$_FILES['cancion']['name']);
echo "La cancion se ha agregado a la lista correctamente.<br>";
}

?>


Pero lo que sucede es que el c´odigo a pesar de subir una canci´on en "rbs" me tira el error de que el archivo no cumple los requisitos, quer´ia saber si alguien puede ayudarme y decirme lo que estoy haciendo mal... Un saludo, y gracias de antemano..

Mauricio  26/3/08 
Quisiera saber como subo el archivo pero llamando la misma pagina

N@i  23/4/08 
Hola estoy utilizando el $_files en un programa que estoy realizando para subir imagenes pero ademas de las caracteristicas comunes como el peso el tipo, etc. Me gustaria saber el tamaño de la imagen que suben al servidor por ejemplo 120x120 como lo hago Gracias por la ayuda

xalo  11/5/08 
Gracias me sirvio aunque debo anotar que si hago todo sobre un mismo script lo aconsejable es hacerlo con $_FILE

sentyluna  14/5/08 
hola lo que pasa se que el codigo funciona perfectamente pero que necesito antes de subir foto o imagen lo que necesito es que se pueda cargar la foto o oimgen en la pagina y despues le de enviar y guarde en su respectiva carpeta
la verdad si alguiensabe como hacer esto se lo agradeceria

SANTOS 10  31/5/08 
Estoy muy muy muy agradecido por este
articulo es excelente y este foro porke
ya me ha sacado de varias dudas sobre
PHP, espero seguir en contacto, saludos
desde MAZATLAN, byeee

antonio martin  18/7/08 
hola, he usado su script y funciona pero me da problemas con cualquier extension que no sea .txt.

¿alguien sabe porque ocurre esto? la cosa es que no me los pasa del directorio temporal al directorio final.

Gracias de antemano

Agustin  21/7/08 
Una mano (de Dios)....
Deseo subir de 1 a (n) archivos al servidor web
1ro: que lo elija y ponga en una lista de espera
2do: al presionar submit, que envie los (n) archivos de un plumazo..
3ro: Que no pida usuario ni password..
4to: Que ninguno de ellos sea mayor a 1 Mb
5to: Solamente JPG, GIF, PNG o TXT
Gracias

Hernan  09/8/08 
Aqui les dejo el codigo mejorado que almacena el archivo en una carpeta a definir y que ademas todo el script se ejecuta en un solo archivo.

solo hay que modificar el valor de la variable $path con la carpeta del servidor donde queremos que valla el archivo.

Bueno aqui va el codigo. El todo el script va en un solo archivo llamado form_upload.php y recuerden cambiar el nombre de la carpeta donde queremos que valla el archivo

<?


if (isset($_POST['Enviar'])) {
//tomo el valor de un elemento de tipo texto del formulario
$cadenatexto = $_POST["cadenatexto"];
echo "Escribió en el campo de texto: " . $cadenatexto . "<br><br>";

//datos del arhivo
$nombre_archivo = $HTTP_POST_FILES['userfile']['name'];
$tipo_archivo = $HTTP_POST_FILES['userfile']['type'];
$tamano_archivo = $HTTP_POST_FILES['userfile']['size'];
//compruebo si las características del archivo son las que deseo
if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 90000000))) {
echo "La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos .gif o .jpg<br><li>se permiten archivos de 100 Kb máximo.</td></tr></table>";
}else{
$path='productos/';
if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $path.$nombre_archivo)){
echo "El archivo ha sido cargado correctamente.<br> <a href=form_upload.php>Volver</a>";
}else{
echo "Ocurrió algún error al subir el fichero. No pudo guardarse.";
}
}
}else{
echo '<form action="form_upload.php" method="post" enctype="multipart/form-data">
<b>Campo de tipo texto:</b>
<br>
<input type="text" name="cadenatexto" size="20" maxlength="100">
<input type="hidden" name="MAX_FILE_SIZE" value="100000">
<br>
<br>
<b>Enviar un nuevo archivo: </b>
<br>
<input name="userfile" type="file" size="60">
<br>
<input type="submit" name=Enviar value="Enviar">
</form>';
}
?>


Dario  12/8/08 
Hola, quiero agregar cuatro campos mas para poder subir un archivo por cada field. Alguien puede ayudarme como?
gracias

Ver el articulo / faq completo Ver el articulo y todos sus comentarios
Añadir un comentario al artículo Añadir un comentario del artículo
  Ir arriba

Comentarios no revisados de:

+ Upload de archivos con PHP


DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia