2012-02-17 4 views
7

PHPリダイレクト、は、PHPのパスデータがポストデータ</p> <p>こんにちはのRedirect

と私は初心者のPHPプログラマーや小さなブログをコーディングしようとしています。

私は何をしようとしているか説明します。

  • page1.phpは:ブログ
  • page2.phpすべての投稿のテーブルを持っている:このページは、あなたが自分自身に

2ページの記事をポストを追加することができ、フォームを持っており、成功した場合はheader()を使用してテーブルを示すpage1にリダイレクトします。

私がしたいことは、ブログ投稿が正常に送信されたことを示す表の上の1ページに小さなメッセージを表示できるようにすることですが、後でページ1にデータを戻す方法がわかりませんフォーム処理。

答えて

9

$_SESSIONという値に設定します。 PAGE2中

:Page1の中

$_SESSION['message'] = "Post successfully posted."; 

if(isset($_SESSION['message'])){ 
    echo $_SESSION['message']; // display the message 
    unset($_SESSION['message']); // clear the value so that it doesn't display again 
} 

あなたは両方のスクリプトの先頭にsession_start()を持っていることを確認してください。

EDITif(isset($_SESSION['message']){

+0

感謝を:) –

4

この問題を解決するための古典的な方法で)を逃したが、クッキーやセッションです。 PHPは、内蔵されたセッションの作成と管理を支援セッションライブラリ:ここ

http://www.php.net/manual/en/book.session.php

は簡潔な例です。

ページ1

session_start(); 

    if (isset($_SESSION['message'])) { 
     echo '<div>' . $_SESSION['message'] . '</div>'; 
     unset($_SESSION['message']); 
    } 

ページ2

session_start(); 

    // Process POST data 

    $_SESSION['message'] = 'Hello World'; 

    // Redirect to Page 1 
+0

あなたが 'あなたの1ページにunset'追加する必要がある、または他のメッセージが表示されます毎回(私の前の答えを参照) – Tim

+0

このクリスおかげでありがとう: –

4

変数をヘッダーの場所に追加して、ページから呼び出すこともできます。あなたがメッセージを表示したい場所に

header('Location: http://example.com?message=Success'); 

はその後、単に実行します。このティムのため

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

ありがとう:) –

関連する問題