私はこのウェブサイトで1年以上遊んでいて、まだセッション管理についてほとんど理解していません。ウェブサイトのログイン/セッション管理
私はログインスクリプトをどこかに持っていましたが、私には隠されていましたが、問題はありません。
しかし、明らかに何らかの種類のログインのセッションマネージャが無用です。
私はちょっと考えていましたが、私はセキュリティを設定する方法についてはかなりのフローチャートを描きました。
しかし、mysqliは私を遅くしています。
私はクッキーにユーザー名を格納するというアイデアがありました。この値をデータベースと比較して最後に使用したセッションIDを見つけ、phpsesidクッキーと比較して最後にIDを新しいものに更新して置き換えますdb、これは時代遅れのセッショントークンを持っている人なら誰でもログインする必要があることを意味します。
私はデシベルで定義済みのユーザ名を選択するために、$のSQLを置換しているデバッグ用のMySQL
if(isset($_COOKIE[$cookie_name])){
require_once ("bin/sql.php");
//plan to put another if statement here when the sql works
$sql = "SELECT '$_COOKIE[$cookie_name]' FROM DB.TBL;";
echo $sql . "<br>"; //debugging
$uiddb = new sqlflow;
$uiddb-> db_query($sql);
からデータを引っ張って問題を有する新規セッションマネージャイムを構築しながらので、最終的には「一般的な場合があるでしょうユーザー、他の 'を実行します。
sql docは混乱していますが、私はgoogleを検索した後にいくつかのバリエーションを試しましたが、一般的な結果は '文字列に変換できません'、未知のインデックスであり、配列isntとして機能します。
mysqli_fetch
mysqli_store
misqli_use
すべてのリターンは とi「がperamはmysqliのことが期待」結果VAR を使用するときに私もVARの内容を撮影しperamとしてそれを使用し、thatsのときに私いる「1 peramが0見つかっ期待」を定義されていないインデックスを取得するように思われる
function db_query($value){
$connect = self::db_connect();
$result = mysqli_query($connect,$value);
私はこの後に何かを得ることができませんでした。
私がやろうとしているのは、ユーザーのPID + SESIDなどのデータベースから情報をプルすることです。他の2つのテーブルに最後の既知のIPなどの情報を問い合わせることができます。
'$ sqlを[$:すべての文書の先頭に)(関数のsession_startを入れ
セッション:しかし、それはクッキーでPRIVAT情報を格納する脆弱性だ覚えていますcookie_name] 'FROM DB.TBL; ";'このコードは危険です**。 SQLインジェクションの脆弱性を調べ、PHPで準備されたステートメントを作成する方法。 – ceejayoz
これはアルファです。私はそれを動作させるために働いています。ilは、コードインジェクションに対して後でreal_escapeをインストールするために、私はすでにクエリを実行する前に入力をエスケープするように指定された関数を持っています。私はXAMPPで作業していますので、セキュリティについて心配する必要はありません。 –
のアクセス権を持つ唯一の人です。危険な**の練習です。初めてのことですので、修正するのを忘れないようにしてください。そうすれば、セキュリティを奪い尽くすように訓練することはありません。 – ceejayoz