Saya menggunakan kode berikut dan berhasil mengunggah file di mesin lokal saya. Ini menunjukkan "Berhasil diunggah &" di mesin lokal saya.
// Upload file
$moved = move_uploaded_file($_FILES["file"]["tmp_name"], "images/" . "myFile.txt" );
if( $moved ) {
echo "Successfully uploaded";
} else {
echo "Not uploaded";
}
Tetapi ketika saya menggunakan kode ini di server online saya maka itu tidak mengunggah file dan hanya menampilkan pesan "Not uploaded".
Bagaimana saya bisa tahu bahwa apa masalahnya dan bagaimana saya bisa mendapatkan masalah yang sebenarnya untuk ditampilkan kepada pengguna?
Bagaimana saya bisa tahu bahwa apa masalahnya
Mudah. Lihat log kesalahan dari webserver.
bagaimana saya bisa mendapatkan masalah yang sebenarnya untuk ditampilkan ke pengguna?
Tidak pernah melakukannya.
Rata-rata pengguna tidak akan mengerti apa-apa tentang kesalahan ini.
Seorang pengguna yang jahat seharusnya tidak mendapatkan umpan balik, terutama dalam bentuk pesan kesalahan yang sangat informatif.
Cukup tampilkan halaman dengan alasan.
Jika Anda tidak memiliki akses ke log kesalahan server, tugas Anda menjadi lebih rumit.
Ada beberapa cara untuk berhubungan dengan pesan kesalahan.
Untuk menampilkan pesan kesalahan di layar, Anda dapat menambahkan baris-baris ini ke kode
ini_set('display_errors',1);
error_reporting(E_ALL);
atau untuk membuat logfile kesalahan khusus
ini_set('log_errors',1);
ini_set('error_log','/absolute/path/tp/log_file');
dan ada beberapa cara lain.
tetapi Anda harus memahami bahwa tanpa pesan kesalahan yang sebenarnya Anda tidak dapat bergerak. Sulit untuk menjadi buta dalam kegelapan
Apakah Anda memeriksa bahwa file yang diunggah baik-baik saja? Mungkin anda melebihi max_post_size, atau max_upload_filesize. Ketika login menggunakan FileZilla Anda menyalin file seperti Anda, ketika meng-upload dengan PHP wiritng file ini adalah dari pengguna yang menjalankan apache (untuk exaplme www-data), cobalah untuk menempatkan chmod 755 untuk gambar.