FTP funkce pomocí PHP

Pro řešení problémů s oprávněním na serverech s nastaveným Safe Mode na hodnotu ON (typicky problémy některých zejména opensource systémů s nahráváním obrázků a jiných souborů) mohou sloužit FTP funkce jazyka PHP. S jejich pomocí můžeme vytvářet adresáře/nahrávat soubory pod Vaším FTP uživatelem, a nikoli pod uživatelem webového serveru (apache).

Ukázkový skript

Níže uvedený skript provádí tyto úkony: připojí se k serveru (funkce ftp_connect), provede autentizaci (ftp_login), vytvoří adresář s názvem "adresar2" (ftp_mkdir), nastaví mu práva 777, vstoupí do něj (ftp_chdir) a následně do něj nahraje textový soubor z disku (ftp_put) a spojení uzavře (ftp_close). Úspěšné vykonání skriptu lze samozřejmě ověřit kontrolou návratových hodnot jednotlivých funkcí.

$adresar= "adresar2";

$ftp_server = "ftp.domena.cz";
$ftp_login = "Vaslogin";
$ftp_heslo = "Vaseheslo";

$ftp = ftp_connect($ftp_server);

$login_result = ftp_login($ftp, $ftp_login, $ftp_heslo);

$dir = ftp_mkdir($ftp,$adresar);

$prava = ftp_site($ftp, "CHMOD 0777 $adresar");

$zmenadir = ftp_chdir($ftp, "novaslozka");

$upload = ftp_put($ftp, "soubor.txt", "C:\soubor.txt", FTP_ASCII);

ftp_close($ftp);