Merhaba, bu yazımda Php aracılığıyla mevcut bir FTP üzerine nasıl dosya yüklemesi (file-upload) yapılır? Bunu anlatacağım. Öncelikle çalışmanın githup adresine aşağıdaki linkten ulaşabilirsiniz.
PHP ile FTP İçerisine Dosya Yükleme İşlemi Nasıl Yapılır? (File Upload)
https://github.com/maxmanus16/PHP-FTP-file-upload-example
Aşağıda bu işlem için örnek bir kod betiği paylaşacağım. Açıklamalar arasına fonksiyonların ne işlemler yaptığını göstermeye çalışacağım. Dilerseniz başlayalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | // FTP erişim parametreleri $host = 'ftp.deneme.org'; $usr = 'deneme_user'; $pwd = 'deneme_password'; // mevcut dosya ve hedef dosya bilgileri: $local_file = './deneme.txt'; $ftp_path = '/data/deneme.txt'; // port 21 üzerinden Ftp bağlantısı uralım $conn_id = ftp_connect($host, 21) or die ("Sunucuya bağlanılamadı!"); // erişim parametrelerini gönderelim ftp_login($conn_id, $usr, $pwd) or die("Cannot login"); // pasif mod transferlerini aç (bazı sunucuların buna ihtiyacı var) // ftp_pasv ($conn_id, true); // dosya yüklemesini gerçekleştirelim $upload = ftp_put($conn_id, $ftp_path, $local_file, FTP_ASCII); // yüklenme durumunu kontrol edelim: print (!$upload) ? 'Yüklenemedi' : 'Yükleme Başarılı'; print "\n"; /* ** Chmod (Örnek) */ // Eğer PHP4 kullanıyorsanız, bu kodu kullanmanız gerekir: // ("ftp_chmod" komutu sadece PHP5 ve üzerinde çalışır) if (!function_exists('ftp_chmod')) { function ftp_chmod($ftp_stream, $mode, $filename){ return ftp_site($ftp_stream, sprintf('CHMOD %o %s', $mode, $filename)); } } // chmod 666 ile yazmayı deneyelim if (ftp_chmod($conn_id, 0666, $ftp_path) !== false) { print $ftp_path . " chmod başarılı: 666\n"; } else { print "başarısız chmod $file\n"; } // ftp bağlantısını kapatalım ftp_close($conn_id); |
Soru, görüş ve önerilerinizi benimle paylaşmayı unutmayın, teşekkür ederim.