Foros del Web » Programando para Internet » PHP »

Duda con Upload de ficheros

Estas en el tema de Duda con Upload de ficheros en el foro de PHP en Foros del Web. Como puedo hacer un upload de ficheros desde mi PC hasta el serviedor donde esta mi web mediante la web, algun tutorial al respecto ?'...
  #1 (permalink)  
Antiguo 05/03/2004, 14:53
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Duda con Upload de ficheros

Como puedo hacer un upload de ficheros desde mi PC hasta el serviedor donde esta mi web mediante la web, algun tutorial al respecto ?'
__________________
Ing. Reynier Pérez Mira
  #2 (permalink)  
Antiguo 05/03/2004, 15:01
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Revisastes las FAQ's del foro?

Y el manual oficial de PHP? (buca por Upload)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 05/03/2004, 15:30
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Mira este es el codigo

Este es el codigo que tengo programado para subir el fichero pero me da estos erorres:
Código PHP:
<?php
 
/*******************************************************************************************************************
 Sitio Web del Departamento de Marxismo
 Universidad de las Ciencias Informáticas
 Programación y Diseño: Reynier Pérez Mira ([email protected])
 Bases de Datos: Leonel Salazar Videaux ([email protected])
 Animación: Karel Pérez Ramírez ([email protected])
 *******************************************************************************************************************/
 
ob_start();
 require(
"functions.php");
 
conectaserver("10.7.3.1","root","","marxismo","mysql");
 
$arreglodirectorio = array("PDF","DOC","XLS","PPT","EXE","ZIP","RAR","Otros");
 if ((isset(
$accion)) && ($accion=="subirfichero")){
  if (!
is_dir("files/".$directorio)){
//Esta es la linea 15   
mkdir("files/".$arreglodirectorio[$directorio-1],777);
  }
  if (
is_uploaded_file($_FILES['fichero']['tmp_name'],$directorio.$_FILES['fichero']['name'])){
      
header("uploadadmin.php?accion=administrar&cat=mostrar");
   }else{
      
header("uploadadmin.php?accion=administrar&error&erroralsubir");
   }
 }
 
ob_end_flush();
?>
Estos son los errores:
Cita:
Warning: mkdir(files/PDF): File exists in c:\archivos de programa\apache group\apache\htdocs\marxismo\uploadfiles.php on line 15
Salu2
__________________
Ing. Reynier Pérez Mira
  #4 (permalink)  
Antiguo 05/03/2004, 15:36
Avatar de MSDark  
Fecha de Ingreso: noviembre-2002
Ubicación: Talca VII región
Mensajes: 337
Antigüedad: 15 años, 1 mes
Puntos: 1
en realidad no es algo del otro mundo, y como dice Cluster solo debes revisar las FAQ`s de ete foro y el manual de php o incluso las memorias de un aprendiz de php (www.rinconastur.com/php)

En palabras:

Debes crear un formulario donde puedas elejir al archivo que deseas subir, con un campo file y debe ser un form multipart/form-data.

Luego en la página donde procesaras esta informacion compruebas que todo sea correcto y utilizas move_uploaded_file() y listo...

Un ejemplo

Código PHP:
<form  method="POST" action="subir.php" nctype="multipart/form-data" >
<
input type="hidden" name="LIMITE" value="10000">
<
input type="file" name="file">
<
input type="submit" name="enviar" value="Enviar"  >
</
form>


subir.php

if($_POST['enviar']){
     if(!
move_uploaded_file($_FILES['file']['tmp_name'],"directorio/".$_FILES['file']['name'])){
         echo 
"No se puede subir";
   }else{
     echo 
"Exito";
   }

Básicamente eso, claro que puedes hacer bastantes verificaciones antes de subir el archivo pero eso queda a tu gusto

Algo aconsejable que puedes hacer para debug es print_r($_FILES['file']); lo que te devolvera el deglose del array $_FILES

con el nombre del archivo, el nombre temporal, el tipo, el tamaño, y el codigo de error que pudo haber ocurrido (si es 0 o nada significa q esta todo bien)

Saludos
__________________
DelirioLinux.. Software Libre y tecnología.. php también..
Saludos :arriba:
Usuario Linux #198486 y Ubuntu #12791
Gutsy Gibbon

Última edición por MSDark; 05/03/2004 a las 15:37
  #5 (permalink)  
Antiguo 05/03/2004, 15:51
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Lo he hecho asi pero nada

Lo he hecho de la forma que me has dicho pero me pone el error que no pudo subir el fichero:
Cita:
No se puede subir
Lo habia implementado de esta forma pero tampoco me hace nada:
Código PHP:
$arreglodirectorio = array("PDF","DOC","XLS","PPT","EXE","ZIP","RAR","Otros");
 if ((isset(
$accion)) && ($accion=="subirfichero")){
  if (!
is_dir("files/".$directorio)){
  
//Linea 21
   
mkdir("files/".$arreglodirectorio[$directorio-1],777);
  }elseif(
is_uploaded_file($HTP_POST_VARS['fichero']['tmp_name'])){
      
$rutaenserver "files/".$directorio;
    
$nombrefichero $_FILES['name']['tmp_name'];
    if (
move_uploaded_file($HTTP_POST_VARS['fichero']['tmp_name'],$rutaenserver.$nombrefichero)){
        echo 
"Subido";
        
//header("uploadadmin.php?accion=administrar&cat=mostrar");
    
}else{
        echo 
"No subido";
        
//header("uploadadmin.php?accion=administrar&error&erroralsubir");
    
}
  }
 } 
cuando ejecuto el codigo la primera vez todo de maravilla pero al hacerlo la segunda me da este error
Cita:
Warning: mkdir(files/PDF): File exists in c:\archivos de programa\apache group\apache\htdocs\marxismo\uploadfiles.php on line 21
que hago mal ?'
__________________
Ing. Reynier Pérez Mira
  #6 (permalink)  
Antiguo 05/03/2004, 15:58
Avatar de MSDark  
Fecha de Ingreso: noviembre-2002
Ubicación: Talca VII región
Mensajes: 337
Antigüedad: 15 años, 1 mes
Puntos: 1
Bueno ese Warninf dice que hay un error en tu mkdir de que files/PDF ya existe o algo asi (en este moment no te puedo decir bien que es) die File exists que el archivo existe ... comprueba eso con file_exists()...

Saludos

Luego te contesto con mas detalle
si no lo hace alguno de los maestros (Cluster,Webstudio,Josemi,etc...)
__________________
DelirioLinux.. Software Libre y tecnología.. php también..
Saludos :arriba:
Usuario Linux #198486 y Ubuntu #12791
Gutsy Gibbon
  #7 (permalink)  
Antiguo 05/03/2004, 16:13
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Me sería de gran utilidad una ...

Ayudenme es una de las cosas fundamentales que debo ponerle al Sitio que estoy desarrollando y todavía no lo he logrado. De todas formas yo seguiré investigando.

Salu2
__________________
Ing. Reynier Pérez Mira
  #8 (permalink)  
Antiguo 07/03/2004, 14:11
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Nada ...

Lo he probado una y otra vez y no he logrado que esto me funcione.
Código PHP:
<?php
 ob_start
();
 require(
"functions.php");
 
conectaserver("10.7.3.1","root","","marxismo","mysql");
 
/*if(!move_uploaded_file($_FILES['fichero']['tmp_name'],"files/".$_FILES['file']['name'])){
  echo "No se puede subir";
  print_r($_FILES['fichero']);
 }else{
  echo "Exito";
 }*/

 
$arreglodirectorio = array("PDF","DOC","XLS","PPT","EXE","ZIP","RAR","Otros");
 if ((isset(
$accion)) && ($accion=="subirfichero")){
  if (!
is_dir("files/".$directorio)){
   
mkdir("files/".$arreglodirectorio[$directorio-1],777);
  }elseif(
is_uploaded_file($HTP_POST_VARS['fichero']['tmp_name'])){
      
$rutaenserver "files/".$directorio;
    
$nombrefichero $_FILES['name']['tmp_name'];
    if (
move_uploaded_file($HTTP_POST_VARS['fichero']['tmp_name'],$rutaenserver.$nombrefichero)){
        echo 
"Subido";
        
//header("uploadadmin.php?accion=administrar&cat=mostrar");
    
}else{
        echo 
"No subido";
        
//header("uploadadmin.php?accion=administrar&error&erroralsubir");
    
}
  }
 }
 
ob_end_flush();
?>
Ayuda please ....
__________________
Ing. Reynier Pérez Mira
  #9 (permalink)  
Antiguo 07/03/2004, 19:19
 
Fecha de Ingreso: diciembre-2003
Mensajes: 65
Antigüedad: 14 años
Puntos: 1
Ya explique la otra vez :p es muy facil ahi
  #10 (permalink)  
Antiguo 07/03/2004, 20:04
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Que cosa ...

Que cosa es lo que es muy fácil? No entiendo.

__________________
Ing. Reynier Pérez Mira
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:36.