セッションは PHP では非常に重要です。たとえば、ユーザーは通常、ログインにセッションを使用します。同時に、プロパティ カートは一時的なレコードの保存にセッションを使用します。
セッションの作成が簡単
コードは次のとおりです |
コードをコピー |
session_start();
$username = "nostop";
session_register("ユーザー名");
?>
|
この例では、username という名前の変数をセッションに登録し、その値は nostop です。
セッションを読む
PHP の組み込み $_SESSION 変数は、設定されたセッション変数に簡単にアクセスできます。
コードは次のとおりです |
コードをコピー |
例:
session_start();
echo "登録されたユーザー名は:".$_SESSION["username"] //出力 登録されたユーザー名は: nostop ;
?>
|
セッションを破棄する
コードは次のとおりです |
コードをコピー |
session_unregister() 単一のセッション変数の登録を解除します
unset($_SESSION['age']); $_SESSION['age'] で登録されたセッション変数を登録解除するために使用されます
session_unset() は登録されている変数をすべて削除します
session_destroy() はすべてのセッション変数をログアウトし、セッション全体をログアウトします
|
例:
コードは次のとおりです |
コードをコピー |
session_start();
session_unregister("username"); //セッション変数の登録を解除します
session_unset(); //セッションセッションをログアウトします
?> |
完全なセッションの使用方法を参照してください
セッションを使用してユーザーのログイン情報を保存します
コードは次のとおりです |
コードをコピー |
//データベースの場所
定義('DB_HOST', 'ローカルホスト');
//ユーザー名
定義('DB_USER', 'root');
//パスワード
定義('DB_PASSWORD', '19900101');
//データベース名
定義('DB_NAME','テスト') ;
?>
|
ログインページ: logIn.php
コードは次のとおりです |
コードをコピー |
//ユーザーがログインしていない場合、つまり $_SESSION['user_id'] が設定されていない場合、次のコードを実行します
if(!isset($_SESSION['user_id'])){
If(isset($_POST['submit'])){//ユーザーがログインフォームを送信するときに次のコードを実行します
$dbc = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD,DB_NAME);
$user_username = mysqli_real_escape_string($dbc,trim($_POST['username']));
$user_password = mysqli_real_escape_string($dbc,trim($_POST['password'])); if(!empty($user_username)&&!empty($user_password)){
//MySql の SHA() 関数は、文字列の一方向暗号化を実行するために使用されます
$query = "SELECT user_id, username FROM missmatch_user WHERE username = '$user_username' AND "."password = SHA('$user_password')";
// ユーザー名とパスワードを使用してクエリを実行します
$data = mysqli_query($dbc,$query);
// レコードが 1 つだけ見つかった場合は、SESSION を設定し、同時にページをリダイレクトします
If(mysqli_num_rows($data)==1){
$row = mysqli_fetch_array($data);
$_SESSION['user_id']=$row['user_id'];
$_SESSION['ユーザー名']=$row['ユーザー名'];
$home_url = 'loged.php';
header('場所: '.$home_url);
}else{// 見つかったレコードが間違っている場合は、エラー メッセージを設定します
$error_msg = '申し訳ありませんが、ログインするには有効なユーザー名とパスワードを入力する必要があります。';
}
}その他{
$error_msg = '申し訳ありませんが、ログインするには有効なユーザー名とパスワードを入力する必要があります。';
}
}
}else{//ユーザーがすでにログインしている場合は、ログインしたページに直接ジャンプします
$home_url = 'loged.php';
header('場所: '.$home_url);
}
?>
<頭>
不一致 - ログイン
& Lt;!-$ _Session ['user_id'] を通じて、ユーザーがログインに失敗したと判断され、ユーザー名とパスワードを入力するように表示されます。
If(!isset($_SESSION['user_id'])){
echo ''.$error_msg.' ';
?>
}
?>
|