Foros del Web » Programando para Internet » PHP »

De un formulario me da valores distantos, ¿Por que? Ayuda plz!

Estas en el tema de De un formulario me da valores distantos, ¿Por que? Ayuda plz! en el foro de PHP en Foros del Web. tengo un problema con dos codigos que hice para subir archivos, uno por ftp, y otro por la funcion "copy", el caso es que cuando ...
  #1 (permalink)  
Antiguo 23/07/2005, 13:08
 
Fecha de Ingreso: julio-2005
Mensajes: 19
Antigüedad: 12 años, 4 meses
Puntos: 0
Pregunta De un formulario me da valores distantos, ¿Por que? Ayuda plz!

tengo un problema con dos codigos que hice para subir archivos, uno por ftp, y otro por la funcion "copy", el caso es que cuando estos codigos los utilizo en mi ordenador, funcionan perfectamente, pero cuando los subo a cualquer servidor me fallan, y dandole vueltas descubri el que creo k es el fallo. Al hacer un "echo" de el valor la variable que me viene de un formulario que tiene la ruta de el archivo, me doy cuenta de que poniendolo en mi ordenador me lo suelta asi, C:\patatinpatatan\lalala\archivo.ext , vale bien, pero cuando lo pongo en el servidor me lo suelta asi, C:\\patatinpatatan\\lalala\\archivo.ext . y claro no encuentra el archivo.
¿Por que hace esto? Aqui dejo uno de los codigos:

Código PHP:
<?php

if($fnc == "form"){
    
$form "<center>"
           
."<form name='form1' method='get' action='subir.php' >"
           
."<input type='hidden' name='fnc' value='enviar'>"
           
."Subir Archivo : <input type='file' name='archivo'><br>"
           
."Descripcion :<br>"
           
."<textarea name='descripcion' cols='50' rows='20'></textarea>"
           
."<input type='submit' value='Enviar'>"
           
."</form>"
           
."</center>";
           echo 
$form;
}
if(
$fnc == "enviar"){
    
$nombrearchivo basename($archivo);//Obtener el nombre de archivo de la ruta
    
$extension explode("."$nombrearchivo);//Se obtiene la extension del archivo    
    
echo $archivo;//lo que viene del formulario 
    // Comprobar el estado de la carga
    
if($extension[1] <> "zip"){
        echo 
"ERROR: Tipo de archivo no permitido...";    
        exit;
    }
    else{
        
$subir copy($archivo,"/directorio");
        if(!
copy){
            echo 
"Ha abido un error al subir el fichero";
        }
        else{
            echo 
"Archivo subido satisfactoriamente";
        }
    }
        
}
?>
Espero que me puedan ayudar plz

Saludos !
  #2 (permalink)  
Antiguo 23/07/2005, 14:20
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 13 años, 5 meses
Puntos: 4
ese formulario esta mal me parece..
tiene que ser metodo POST, y le falta enctype="multipart/form-data" y tambien el hidden "MAX_FILE_SIZE"
  #3 (permalink)  
Antiguo 23/07/2005, 17:09
 
Fecha de Ingreso: julio-2005
Mensajes: 19
Antigüedad: 12 años, 4 meses
Puntos: 0
Pues he probado lo que decias tambien, y sigue sin funcionar, el valor que suelta $archivo sigue siendo el mismo, "C:\\directorio\\carpeta\\archivo.ext"
gracias de todas maneras.
  #4 (permalink)  
Antiguo 24/07/2005, 08:57
 
Fecha de Ingreso: julio-2005
Mensajes: 19
Antigüedad: 12 años, 4 meses
Puntos: 0
Por favor necesito ayuda, si alguien sabe como solucionarlo que me lo diga por favor.

Gracias de antemano.
  #5 (permalink)  
Antiguo 24/07/2005, 09:49
 
Fecha de Ingreso: julio-2005
Mensajes: 19
Antigüedad: 12 años, 4 meses
Puntos: 0
Ahora cambie el
Código PHP:
$subir copy($archivo,"mixes/incoming");
if(!
copy){
 echo 
"Ha abido un error al subir el fichero";
... 
por
Código PHP:
$subir copy($archivo,"mixes/incoming".$nombrearchivo);
if(!
$subir){
 echo 
"Ha abido un error al subir el fichero";
... 
Por que creo k eso estaba mal, pero ahora sigue sin funcionar y peor, ya que ahora no obtengo del formulario C:\carpeta\archivo.ext ni C:\\carpeta\\archivo.ext, sino que ahora me devuelve /tmp/phpe5ZKzM , a esto no se le puede sacar ni nombre correcto ni extension, asi que.. no se que acer. Porfavor ayudenme plz !
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 09:18.