MWN Website
ContactHome

Troubleshooting upload dengan skrip

Artikel berikut ini menjelaskan problem-problem yang mungkin terjadi saat melakukan upload menggunakan skrip.

Contents

Umum

Ukuran file hasil upload selalu 0 byte

Pastikan account hosting Anda masih memiliki ruang disk di bawah quota.

Atau mungkin juga ruang disk di server hosting habis. Untuk masalah yang ini, harap laporkan ke bagian technical support. Terima kasih.

PHP

Gagal saat move_uploaded_file()

Jika skrip Anda berjalan sebagai user CGI, maka file yang terupload ke temporary directory pertama akan menjadi milik (cgi-USER, USER, 600). Lalu jika Anda ingin memindahkan ke tujuan akhir, yaitu umumnya di bawah document root, maka direktori document root Anda perlu di-chmod menjadi 775, agar user cgi-USER dapat memindahkan file tersebut ke direktori tujuan akhir. Setelah itu chmod-lah file-nya menjadi 644 atau 664.

Jika skrip Anda berjalan sebagai USER, seharusnya tidak ada masalah saat move_uploaded_file(). Direktori tujuan akhir cukup 755 seperti biasa (750 atau 700 tidak bisa, karena nanti tidak akan bisa dilihat oleh user webserver). Jangan lupa setelah dipindahkan, chmod-lah file-nya menjadi 644 agar dapat dilihat oleh user webserver.

Gagal upload program biner

PHP di server hosting secara default mengaktifkan extension Suhosin. Extension ini melakukan beberapa pengecekan dan proteksi, di antaranya melarang upload ELF binary. Untuk menonaktifkan proteksi ini agar Anda dapat mengupload biner, set suhosin.upload.disallow_elf = 0 dari php.ini per-subdomain Anda.

Bahan bacaan:

Contoh skrip Upload PHP

Berikut contoh skrip upload PHP dengan Prefs PHP sebagai user CGI. Langkah pertama buat halaman form (beri nama file uploadform.php) yang isinya sebagai berikut:

<html>
  <head>
    <title>Contoh Form Upload dengan PHP</title>
  </head>
  <body>
    Contoh Form Upload dengan PHP
    <form enctype="multipart/form-data" action="p_upload.php" method="post">
      <input type="hidden" name="MAX_FILE_SIZE" value="15000000" />
      Upload this file: <input name="userfile" type="file" />
      <input type="submit" value="Upload" />
    </form>
  </body>
</html>

Langkah kedua buat file pemroses form tadi (beri nama file p_upload.php) yang isinya:

<?php
$dir     = 'images/';
$path    = $dir . $_FILES['userfile']['name'];
$tmpname = $_FILES['userfile']['tmp_name'];
if (is_uploaded_file($tmpname)) {
  chmod($path, 0644);
if (move_uploaded_file($tmpname, $path)) {
  echo "File $path sukses diupload";
} else {
  echo "Proses upload gagal, kode error = " . $_FILES['userfile']['error'];
}
?>

Agar direktori images/ ini bisa sukses ditulis oleh skrip php, maka perlu di ubah permissionnya ke 775.


Navigasi

Feedback

Artikel Popular

  • Panduan pengguna Spanel
  • Peraturan dan Persetujuan
  • Email
  • Panduan pengguna Masterkey
  • Upload files
  • Kontak MWN
  • PHP
  • Setting SMTP
  • Tentang shared hosting
  • Tutorial instalasi phpBB
  • URL sementara
  • selengkapnya...
  • Artikel Terbaru

  • SSH
  • Membuat akun email secara batch
  • Tip looping di shell
  • T:Formmail tidak jalan
  • Tip timestamp di log
  • NRRPResponseCode 531
  • Promo domain .INFO gratis
  • Memblokir user anonim
  • Restore password admin joomla
  • T:GD di PHP tidak mendukung fungsi fungsi imagecopyresampled
  • SQL Server
  • selengkapnya...
  • Hak cipta © 2006-2008 PT Master Web Network Konten ditulis dan dikoleksi oleh staf MWN. Artikel-artikel pada situs knowledge base ini dapat dikutip dan disalin secara bebas, namun mohon menyebutkan sumber dengan URL http://kb.masterweb.net/ atau teks "Knowledge Base MWN". MWN tidak bertanggung jawab atas akurasi dan/atau kekinian konten. MWN tidak bertanggung jawab atas komentar-komentar yang dikirim pembaca. Dengan memposting komentar Anda memberi hak penuh pada MWN untuk menampilkan komentar tersebut di manapun dan kapanpun, dan untuk mengedit atau menghapus komentar tersebut dengan cara bagaimanapun dan/atau karena alasan apapun.