Nejste přihlášeni
Stránky 1
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.
Offline
No such file or directory prostě znamená že ten soubor nebo složka neexistuje takže máš zřejmě špatně tu adresu kterou jsi cenzuroval? Mohl bys prosím zkopírovat přesné znění toho erroru?
Robotická online hra zdarma: Bamgame.net
Offline
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.
Offline
Tak už jsem na to přišel (aspoň doufám )
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ží. :-)
Offline
Stránky 1