Ver Mensaje Individual
  #3 (permalink)  
Antiguo 17/03/2004, 04:01
Paranoid
 
Fecha de Ingreso: diciembre-2003
Mensajes: 222
Antigüedad: 20 años, 4 meses
Puntos: 2
PUES ES QUE LO HE HECHO CON UN SCRIPT DE PHP...
Lo que hago para subir los ficheros, es el tipico formulario, que que deja el fichero via ftp, en un servidor. Renombrado al id del registro de la bbdd al que corresponde al fichero. Y luego se descarga desde el mismo servidor renombrandolo...
pero al descargarlo da fallos en algunos....

el codigo es el siguiente--
Para la descarga:

$idd=$_GET["id"];
echo $idd;







$res=mysql_query("SELECT * FROM documentos WHERE iddoc=$idd")or die ("no se puede realizar la consulta");
while($row = mysql_fetch_array($res)){

$downloads=$row["descargas"]+1;
$update=mysql_query("UPDATE documentos set descargas='$downloads' WHERE iddoc=$idd")or die("no se pueden actualizar las descargas");


$name = $row[ruta];
$fichero="/home/mescobar/archivos/$row[iddoc]";
if($fp = fopen($fichero, 'rb')){
// mandamos las cabeceras correctas
header("Content-Type:application/x-download\n");
header("Content-Disposition:attachment;filename=".$name."\n");
header("Content-Length: ".filesize($fichero)."\n\n");
// dump the picture and stop the script
fpassthru($fp);
}else{
echo "tio, el archivo no se abre";
}
exit;
unlink($fichero);

}


Y para la subida remota del fichero al servidor:

$file_name = $_FILES['uploadFile']['name'];

// strip file_name of slashes
$file_name = stripslashes($file_name);
$file_name = str_replace("'","",$file_name);
$copy = copy($_FILES['uploadFile']['tmp_name'],$almacen."/".$file_name);
// check if successfully copied
if($copy){
echo "$file_name | uploaded sucessfully!<br>";
}else{
echo "$file_name | could not be uploaded!<br>";
}
$x=ftp_connect ("ftp.xxxxxxxxx",21);
if($x !=0){
echo "<br>Conexión FTP activada";
}else{
echo "<br>No se activo lo conexión FTP";
}

if(ftp_login($x,"111111","111111")){
echo "<br>El login y la password han sido aceptados";
ftp_chdir($x,"/home/mescobar/archivos");
//echo ftp_pwd($x);
if(ftp_put($x,"/home/mescobar/archivos/$file_name",
"$almacen/$file_name",FTP_BINARY)){
ftp_rename($x,"$file_name","$nombre");
echo "<br>El archivo $file_name ha sido subido con exito al servidor";
unlink("$almacen/$file_name");
return $file_name;
}else{
echo "<br>El archivo $file_name no ha podido ser subido al servidor";
return "";
}
}else{
echo "Error en login o password";
}
ftp_quit($x);



Si encuentras alli, porque falla te estare eternamente agradecido. Muchas gracias