1

我一直在尝试让一个脚本工作,该脚本使用 AJAX 将 PHP 文件调用到 jQuery 脚本中。

var dataString = 'Submit=Set';
$.ajax({
   type: "POST",
   url: "./inc/php/file.php",
   dataType: "json",
   data: dataString,
   success: function(data) {
    $('.error').html(data.errormsg+' OK.');
   },
   error: function(data) {
    $('.error').html(data.errormsg+' OH NO.');
    }
});

它正在调用这个 PHP

$blogstatus =array();
$blogstatus['errormsg'] = 'NOTHING';
if(isset($_POST['Submit'])){ 
$blogstatus['errormsg'] = 'FIRST';

if (file_exists('/files/subfolder/')){
    $blogstatus['errormsg'] = 'exists';
}else{
    $blogstatus['errormsg'] = 'YES';
    mkdir('./files/subfolder/',0777);
}
echo json_encode($blogstatus);  

如果我把 mkdir 拿出来,一切都运行良好,我可以调用 errormsg。我已经尝试在标准 PHP 脚本中运行没有 ajax 调用的 mkdir,这很有效。每次我将 mkdir 放入脚本中时,我都会将 errormsg 变量设置为未定义并且脚本失败。

我对使用 jquery 相当陌生,所以它可能是一些简单的事情。为任何帮助欢呼

4

1 回答 1

2

请确保满足以下几点:

确保父文件夹有权让 apache 运行您的命令?

此外,从您的命令中删除尾部斜杠

mkdir('./files/subfolder/',0777);

to

mkdir('./files/subfolder',0777);
- it is good to supply the full path when it comes to linux commands. For ex:

mkdir('/var/www/html/someproject/somemodule/files/subfolder',0777);
于 2011-06-01T09:33:52.827 回答