2011-01-11 18 views
2

$_SESSIONを使わずに別のページに成功メッセージを表示することはできますか?セッションを使用せずにリダイレクトした後で成功メッセージを表示できますか?

process.php

header('location:/thank-you.php'); 
$success = 'Thank you. Please come again'; 
exit(); 

お礼you.php

if(isset($success)) { echo $success; }

現在のところ、それは働いていません。それがどうやってできるのか教えてください。

+0

可能ですが醜いです。セッションを使用する上で悪いことや複雑なことは何もありません –

+0

あなたは潜在的にクッキーを使用できますが、$ _SESSIONを使用するとクリーンになります。 –

+0

わかりにくいクエリ引数を追加しますか? 'http://example.com/thank-you.php?p = np'とありがとうございます。 –

答えて

4

あなたはこれを行うことができます:

process.php

header('location: /thank-you.php?mess=1'); 
exit(); 

お礼you.php

$mess = isset($_REQUEST['mess']) ? $_REQUEST['mess'] : null; 
if($mess == 1) { 
    echo 'Thank you. Please come again'; } 

これは最適ではありませんが、単純なシナリオではうまくいくはずです。

0

header('location:/thank-you.php?success=Thank+You+Please+Come+again');

$success =$_GET['success']; 
if(isset($success)) { echo $success; } 
+0

クエリ文字列は良い提案ですが、XSSを避ける​​ために' strip_tags'と言いたいと思います。http ://us.php.net/manual/en/function.strip-tags.php – webbiedave

+0

クエリ文字列に渡された変数を直接出力することはあまりお勧めできません。ページインジェクションの問題(xss)に注意してください。 – Damp

関連する問題