私はいくつかの異なるテーブルを使用するphp/mysqlアプリケーションを作成しています。URLから変数情報を渡す代わりに
表1はユーザー情報(名前電子メールなど)を格納し、表2はユーザーウィジェットを格納し、表3はこれらの個々のウィジェットの構成を格納します。
これを行う方法は、表1にある特定のユーザーの識別に使用する自動インクリメントキーがあります。彼らがテーブル2にアクセスすると、テーブル1からのその特定のユーザのキーIDである "uid"と同様に、そのテーブルを含む行を作成します。ユーザがウィジェットの設定をしたいとき表3では、テーブル2からのユニークなウィジェットIDである「cxid」またはconfig xidを格納します。
これは、どのウィジェットがどのユーザーに表示されるのかを制限することを目的としています。 configは明らかに設定目的のために使用されます。
問題は、個人のウィジェットを呼び出すときに、URLにuidを渡すという問題です。これは明らかにセキュリティ上の問題です。あなたはそれを変更して他の人のウィジェットを見ることができます。しかし、私は誰にもこれがどのように行われているのか知りたくはありません。 URLを使用せず、フォームを使用しないスクリプト間で変数を渡す方法はありますか?
を?ユーザーがログアウトしたとき、または別のアカウントでログインしたいときに閉じる/クリアすることはできますか? – mrpatg
はい、session_destroy()コマンドを発行して閉じます。 –
$ _SESSION変数のすべてのデータは、スクリプトの実行が終了するまで持続するため、session_destroyにはバグがあります。すぐにリダイレクトするので問題は見つけられません。 –