#1 Re: Problémy s FTP » Nefungující funkce ftp_put(); » 2011-09-26 17:20:08

Tak už jsem na to přišel (aspoň doufám  smile )

Jelikož soubory webu jsou v podložce /web, která se navenek jeví jako kořenová, tak se pro výše uvedený zdroják musí upravit tyto řádky:

$paths='hvezdacheb.4fan.cz/web/'.$_POST['pathserver']; // nazev webu musí být bez www., http://, ftp://, jinak přenos FTP selže.
...
// set up a connection to ftp server
$conn_id = ftp_connect($ftp_server);
 
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// check connection and login result
if ((!$conn_id) || (!$login_result)) {
       echo "FTP connection has encountered an error!";
       echo "Attempted to connect to $ftp_server for user $ftp_user_name....";
       exit;
   } else {
       echo "Connected to $ftp_server, for user $ftp_user_name".".....";
   }
 
$upload = ftp_put($conn_id, $paths.'/'.$name, $filep, FTP_BINARY); // nebo FTP_ASCII, na funkci rostlináře nemá vliv ;-)

// check the upload status
if (!$upload) {
       echo "FTP upload has encountered an error!";
       echo ftp_pwd($conn_id);
   } else {
       echo "Uploaded file with name $name to $ftp_server ";
   }
 
// close the FTP connection
ftp_close($conn_id);	

Věřím, že to jistě ještě někomu poslouží. :-)

#2 Re: Problémy s FTP » Nefungující funkce ftp_put(); » 2011-09-26 16:34:48

Cílová adresa je v pořádku, při volání funkce var_dump(is_dir($paths)); mi odpovi true. opravdu jsem zkoušel včera snad úplně všechno... Není možné, že má server Endora tuto funkci deaktivovanou? Jinak cilovou slozku mám s atributy 0777. Opravdu už jsem zoufalej...
Budu rád za jakoukoli pomoc.

#3 Re: Problémy s FTP » Nefungující funkce ftp_put(); » 2011-09-25 21:04:20

Zdravím Vás,
na mém webu používám script na ftp přenos souborů. Na localhostu i na předchozím free hostingu tento script normálně běží, ale zde se mi vypíše chybová hláška:

Warning: ftp_put(): cilova_adresa/nazev_souboru.pripona: No such file or directory in /home/users/jmeno_uzivatele/adresa_webu/web/ftp_upload.php on line 92 FTP upload has encountered an error!

Soubor načítám klasicky z formuláře:

<form action="ftp_upload_test_.php" method="POST" enctype="multipart/form-data">
<input name="server" value="srv5.endora.cz">...
...
</form>

Výtah z kódu:

$paths=$_POST['pathserver'];
 
$filep=$_FILES['userfile']['tmp_name'];
 
$ftp_server=$_POST['server'];
 
$ftp_user_name=$_POST['user'];
 
$ftp_user_pass=$_POST['password'];
 
$name=$_FILES['userfile']['name'];
 
// set up a connection to ftp server
$conn_id = ftp_connect($ftp_server);
 
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
 
// check connection and login result
if ((!$conn_id) || (!$login_result)) {
       echo "FTP connection has encountered an error!";
       echo "Attempted to connect to $ftp_server for user $ftp_user_name....";
       exit;
   } else {
       echo "Connected to $ftp_server, for user $ftp_user_name".".....";
   }
 
// upload the file to the path specified
$upload = ftp_put($conn_id, $paths.'/'.$name, $filep, FTP_BINARY);
 
// check the upload status
if (!$upload) {
       echo "FTP upload has encountered an error!";
   } else {
       echo "Uploaded file with name $name to $ftp_server ";
   }
 
// close the FTP connection
ftp_close($conn_id);	
 
}

Nevíte prosím někdo, kde může být problém? Děkuji.

Zápatí

Založeno na FluxBB | CZ a SK