2017-03-02 7 views
1

大きな問題がありますが、私は自分のPHPスクリプトでコンテンツを生成しています。私は生成スクリプトにtext-inputを渡します。このスクリプトはすべてtext-input$_SESSION変数に設定しています。例えばPHPセッション変数をローカル変数に保存する

:私はそれらの$_SESSION変数を取ると、ローカル変数に入れ

$_SESSION[text1] = $text1; 
$_SESSION[text2] = $text2; 

のように...

生成されたページで。例えば

$text1 = $_SESSION['text1'] 
$text2 = $_SESSION['text2'] 

のように...

しかし、私は(ログイン/ログアウトシステムの原因)が発生し、サイト上のすべてのコンテンツがなくなっているのセッションを破棄した後。まだHTMLタグだけがそこにあります。つまり、私にとっては、セッションを破棄した後、すべてのセッション変数が空になります。

ここで私の質問は、session_destroy();の後にセッション変数を失うことなく保存する方法です。

Ps:私はMySQLデータベースを使用していますが、それほど有能ではありません。

+0

これらの変数で何をしたいですか?セッションを破棄してページをリロードした後は、変数は空になります。 –

+0

私はそれらを「永遠に」保存して、変数の内容を失うことはありません。 –

+1

次に、SQL、File、またはnoSQLデータベースの形式で、ある種のデータベースに頼らざるを得なくなります。 –

答えて

-2

たぶん、未設定のセッションを試みるが、ちょうどこの場所あなたがログイン情報を保存します。

unset($_SESSION['login_session']);

次にあなたが他の人のセッションを保存することができます。

他の方法は、テキストを保存するためにクッキーを使用しています。

$_COOKIE['text1'];

ですから、セッションを破棄するときには、ソリューションは、MySQLデータベースに格納することができクッキー

+0

彼は変数で何をしたいのか不明です。 –

0

を破壊傾けます。 [Doc Here]

そして、このように挿入します:アプリケーションのコンテキストで

INSERT INTO my_table(`var1`,`var2`,`var3`) VALUES($val1,$val2,$val3); 

何あなたのテーブルに行を挿入する 使用PDOコネクタ?

2

セッション変数はsession_destroyの後に破棄されますが、どのように動作しますか。あなたはmysql DBに保存することができます。ファイル(json形式)、mongodb、memcached、redis ... また、単純で安全でないvarにクッキーを使用することもできます。 非常に単純なものは、ファイルに保存することです:

file_puts_content('filename.json',json_encode($_SESSION)); 

$_SESSION=json_decode(file_gets_content('filename.json'),true); 

それを取り戻すためにしかし、データベースでそれを行うにははるかに良いです。

関連する問題