2012-04-18 10 views
0

の間でセッションデータを格納することができない私が使用するのでOOPフォームは、私は私のPHPプロジェクトのすべての問題に直面しているページ

を提出するユーザーが存在する場合、それはそれを処理することにしている場合行くときということであるということですそれは私がエラーセッションにメッセージを保存してのは、私が持っていると言う、これはサンプルです。もちろん、それはそれは聞かせ等が

たすべてのフィールドを拭くリダイレ​​クトするとき

同じページにリダイレクトしていますあった登録フォーム

<?php if(!empty($message)) { echo $message } ?> 
<form action ="forms/register.php"> 
first name: <input type="text" name="first_name" /> 
username:<input type="text" name="username" /> 
<input type="submit" value = "submit" /> 
</form> 

このfirst_nameのかUSER_NAMEが空の場合はフォーム/ register.phpのコード

if(isset($_POST['submit'])) { 
    $first_name = $_POST['first_name']; 
    $username = $_POST['username']; 

if(empty($first_name) || empty($username) { 
    $session -> message("please fill in all the fields"); 
    redirect("../register.php"); 
} else { 
    // do something else like insert query 
} 

} 

私の問題があり、それは

をregister.phpにリダイレクトして、エラーメッセージがない問題をエコー表示するものですその

ではなく、フィールドがFIRST_NAMEとUSER_NAMEが空

ある空になっているので、ユーザは再び

をそれをすべて埋めるために持っています

ので、私の友人の一人は、どのように、私は誰もが、それは誤解しないだろうかそうで意味、その後、私は道を意味するので、私はそれが可能かどうかを知りたいセッションか何か

に保存することが示唆ないコードだけでそれをコピーし、それを事前

+0

空白の後のPHP($ username)にある閉じ括弧を除いて、POST変数はOKを渡す必要があります。ゲットースタイルのprint_r($ _ POST)を試すことができますか?実際に何が起こっているのか見てみましょうか?またFireBugで送信しているヘッダーを分析することもできます... – HappyTimeGopher

+0

'$ session'にクラスを使用しているようです。コードを見ることなく、私たちはあなたを助ける手がかりを持っていません。 '$ session'クラスをsumariseして、ここに投稿してください。また、CakePHPやCodeIgniterのようなフレームワークを使用していますか? – rcdmk

+0

ランダムな場所に入力するのではなく、文の最後にピリオドを入力するとよいでしょう。 – GolezTrol

答えて

2

あなたは、フォームページにそれらの値を取得し、フォーム要素のvalue属性でそれらをエコー、その後、ページがセッション変数にリダイレクトした後、フォームに固執しておきたい値何でも保存することができます。

+0

私はそれをそのまま保存しなければならないと思います $ username = $ _SESSION ['username'] = $ _POST ['username'] リダイレクトすると、私は試してみます /> そうですか? –

+0

これは正しいはずですが、 'if'ステートメントで閉じ括弧を省略した点が異なります。 'if(!empty($ _ SESSION ['username']))' – ahruss

+0

本当にありがとう、本当にありがとう –

1
session_start(); $_SESSION['nick'] = $_GET['nick']; 

以上/より良い例長いと迷惑なことを気の毒で

おかげで貼り付ける:

をあなたは正確に直面している問題何

http://php.net/manual/en/function.session-start.php

+0

あなたが送ったこのマニュアルからたくさんありがとう –

1

わからない(また、$セッションは、ワークフロー内でどのような?)。 しかし、私はPHPのinbuildセッションのサポートを使用することをお勧めします。上記のリンク自体からhttp://php.net/manual/en/features.sessions.php

は:コードの上

<?php 
session_start(); 

if(isset($_SESSION['views'])) 
{ 
    $_SESSION['views']=$_SESSION['views']+1; 
} 
else 
{ 
    $_SESSION['views']=1; 
    echo "Views=". $_SESSION['views']; 
} 
?> 

単純にページビューを追跡します。 $ _SESSION変数はページの読み込み間に存続し、すべてのセッション要件に同じ値を使用する必要があります。

+0

私はすべてのクラスを使用しています –

関連する問題