PHP move_uploaded_file () hata ayıklama nasıl

3 Cevap php

move_uploaded_file (), artık benim için çalışmaz gayet iyi çalışıyordu ve sadece hiçbir yerde durdu. Artık çalışmıyor neden beni kontrol etmek için bir yolu var mı? İşte ben şu anda ne var, ancak yalnızca DOĞRU veya YANLIŞ döndürür.

$status = move_uploaded_file($tempFile, $targetFile);
if($status) {
  echo 'its good';
} else {
  echo 'it failed';
}

Ben yolu% 100 doğru olduğunu biliyorum ve dizin CHMOD 755. Yanlış yapıyor olabilir bir şey var mı?

3 Cevap

Belki bu işe yarar:

if(!move_uploaded_file($_FILES['attachement']['tmp_name'], $uploadfile)) {

echo 'Your file was not uploaded please try again
here are your debug informations:
'.print_r($_FILES);

      } else {

          echo 'image succesfully uploaded!';

      } 

(error_reporting fonksiyonuna bakınız) hata raporlama seviyesini kontrol edin. Eğer biraz daha açıklayıcı bir uyarı ya da haber almak gerekir.

Ayrıca, PHP betik (genellikle sunucunun nobody veya www-data sistemleri bir sürü üzerinde kullanıcının, ama YMMV) olarak çalışır kullanıcı dizini sahibi olduğunu kontrol edin. 755 ile, dizinin tek sahibi bunu yazabilirsiniz.

755 İzinler dizinin tek sahibi bu dizine yazma anlamına gelir.

Yani soru, kim sahibi ve ne kullanıcı gibi web sunucu / php çalışan, nedir?

Onlar uygun değilse, ya mülkiyet veya grubu (aynı zamanda 775 için izinleri değiştirerek) değiştirebilirsiniz.