0

jqueryとajaxを使用して変数をphpスクリプトに送信しようとしています。次に、その変数を使用してファイル名を作成したいのですが、失敗します。ファイル名は常に「0」であり、ディレクトリ「リダイレクト」にはありません。

コードは次のとおりです。

アヤックス:

    var pageName=$('#movie').val();

    $.ajax({
        type: "POST",
        url: "phpstuff.php",
        data: { pageName: 'pageName'},
        cache: false,
        success: function()
            {
                alert(pageName);
            }
    });

「pageName」変数は、ID「movie」の入力ボックスから値を取得します

phpファイル

function createPage ($newPage){

$file=fopen("redirect/"+$newPage+".php","w") or exit("Fail to create the page");
$data = "some text I want to be in a file";
fwrite ($file, $data);
fclose($file);
}

$newPage = $_POST["pageName"];
createPage($newPage);

何時間もネットを検索しましたが、まだ問題を解決できません。

4

3 に答える 3

4

ライン

data: { pageName: 'pageName'},

する必要があります

data: { pageName: pageName},

print_r( $_POST["pageName"] ) は、最初のバージョン $_POST["pageName"] is 'pageName' で、何が渡されているかを示します

使用することもできます

data: 'pageName='+pageName,

http://api.jquery.com/jQuery.ajax/での data パラメーターの説明は、GET について説明し、POST について言及していないため、あまり明確ではありません。

于 2012-11-01T14:25:17.443 に答える
3

文字列の連結は、次のようにして行う必要があります.

"redirect/" . $newPage . ".php"
于 2012-11-01T14:16:42.437 に答える
1

この行を変更してみてください:

$file=fopen("redirect/"+$newPage+".php","w") or exit("Fail to create the page");

$file=fopen("redirect/".$newPage.".php","w") or exit("Fail to create the page");

+からへの変化に注目してください.。PHP では+加算.用で、文字列連結用です。

于 2012-11-01T14:17:50.980 に答える