이미지를 폴더에 업로드하는 PHP 스크립트가 있습니다.PHP 알림 : 정의되지 않은 인덱스 : 파일 업로드 사진
그것은 로컬로 작동되지만, 나는 다음과 같은 오류 메시지가 호스팅 서버에 넣어 때
[목 5월 18일 21 : 45 : 00.833970 2017] [fcgid가 : 경고] [PID 37560을 ] [클라이언트 151.229.83.93:44238] mod_fcgid : stderr : PHP 공지 사항 : 정의되지 않은 색인 : 에있는 파일 /home/linnas01/g/domainname.com/user/htdocs/php/uploadphoto.php에 9 번 라인, referer : http://domainname.com/photoupload.html
왜 이런 일이 일어나고 있으며 어떻게 해결할 수 있습니까? 이
<?php
if (0 < $_FILES['file']['error']) {
echo 'Error: ' . $_FILES['file']['error'] . '<br>';
}
else {
move_uploaded_file($_FILES['file']['tmp_name'], 'images/' . $_FILES['file']['name']);
}
?>
내 html 파일이 파일은 아약스와 함께 게시됩니다이
<form enctype="multipart/form-data">
<input id="upload-input" type="file" name="file" multiple="multiple" enctype="multipart/form-data">
<input type="submit">
</form>
모양처럼
PHP는 보인다.
var formData = new FormData();
for (var i = 0; i < files.length; i++) {
var file = files[i];
fileNames.push(file.name);
// add the files to formData object for the data payload
formData.append("image", file);
}
$.ajax({
url: 'uploadphoto.php',
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function(data){
console.log(data);
}
});
I have also configured the directories and files as explained here.
[PHP : "주의 : 정의되지 않은 변수", "공지 : 미정 지수"및 "주의 : 오프셋 미등록"]의 가능한 복제 (http://stackoverflow.com/questions/4261133/php-notice -undefined-variable-notice-undefined-index-and-notice-undef) – Bytewave
tl; dr'name' 속성'file'을 가진 파일 필드에는'POST'가 없습니다. 귀하의 양식이 어떻게 보이는지 알면 더 많은 것을 도울 수 있습니다. – Bytewave
'$ _FILES [ 'file']'이 사용되기 전에 그것이 채워 졌는지 확인하십시오. – chris85