6

ヘッダー リンク内で変数を渡そうとしています。以下のコードを試しました

$name = "mike";

if($name != "lopan"){
        header("Location:error-page.php?$errorMssg=Please enter information?");
}

このページは場所にリダイレクトされますが、メッセージを含む変数は渡されません。しかし、次のような値を持つ単純なリンクを作成すると:

<a href="error-page.php?$errorMssg=so what happened there buddy?">link</a>

それは問題なく通過します。

私が間違っていることは何ですか?または、ヘッダーで情報を渡すことができませんか?

4

3 に答える 3

13

次のようなurlencodeを使用する必要があります。

if($name != "lopan"){
        header("Location:error-page.php?errorMssg=".urlencode("Waoo so your not EVEN going to try to enter information huh?"));
}

そして、error-page.phpで、それを取得する必要があります(urldecodeする必要はありません):

<?php
$errorMssg = $_GET['errorMssg'];
于 2012-04-06T20:14:23.000 に答える
5

$errorMssgurlencodeメッセージを削除します。

于 2012-04-06T20:11:57.777 に答える
1

$errorMssg代わりに持っているからでしょ$errorMsgうか?また、有効なURLを作成してみてください。たとえば、 ""を%20などに置き換えてください。関数urlencode()がこれに役立ちます。

于 2012-04-06T20:14:23.893 に答える