그래서 나는 AJAX 요청에서라는 PHP 페이지에서 파일을 포함하여 문제에 봉착 :PHP : AJAX 요청이 PHP하는
$(document).ready(function() {
$("#image-status").html('Processing images...');
});
function process_images(files) {
$.ajax ({
type: "POST",
url: "includes/imageprocessor.php",
data: {files: JSON.stringify(files)},
success: function(data){
$("#image-status").html(data);
}
});
}
내가 imageprocessor.php에이 require_once를 노력하고있어이 :
를또한 include 디렉토리에 있으며 작동합니다. 그냥 다른 페이지에서 사용하여 잘 작동하는 삽입을 실행했습니다. 하지만 실행하려고하면
Fatal error: Call to a member function prepare() on a non-object in /home/yogabopvolume26/theprivatesector.org/epic/includes/imageprocessor.php on line 90
을 그 첫 번째 장소에서 db_connect이 필요하지 않은 것처럼 (그건 $ DB를 선언된다) :
function get_files($id) {
$query = $db->prepare("SELECT * FROM files INNER JOIN file_profile_join ON files.id = file_profile_join.file_id WHERE file_profile_join.profile_id = " . $id . " GROUP BY files.id");
try {
$query->execute();
$rows = $query->fetch();
} catch (PDOException $e) {
die($e->getMessage());
}
}
나중에 imageprocessor.php, 그것은 오류를. 그러나 db_connect.php를 찾을 수 없다는 오류도 반환하지 않습니다.
basename(__DIR__)
(AJAX 요청을 통해 반복) imageprocessor.php에서 "포함"을 반환합니다.
require_once에서 절대 URL과 루트 경로를 모두 사용해 보았지만 오류가 발생하지 않고 imageprocessor.php에서도 계속 진행됩니다. require_once가 반환 된 후 해당 파일의 에코가 표시되지 않습니다. 또한 session_start (현재 세션이 활성화되어 있으므로 원본 페이지 [profile.php]에서 print_r $ _SESSION을 할 수 없습니다)에서 현재 세션을 가져올 수 없습니다. 아마 관련이있을거야? 나는 무엇이 잘못되었는지 알 수 없다.
$ db의 내용을 덤프 할 수 있습니까? 외부 파일에 변수를 정의하면 define() 함수를 사용하여 변수를 참조해야합니다. –
도움이 될까요? http://stackoverflow.com/questions/2531221/giving-my-function-access-to-outside-variable –