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 に答える