ログに記録されたユーザー名を $_SESSION[user_name] 変数に既に保存しています。$_SESSION[user_id] 変数に user_id を追加で保存するにはどうすればよいですか。$stmt->fetch_array(MYSQLI_NUM); を使用しようとしました。しかし、運がありませんでした。
私はそのようなMySQLテーブルを持っています:
ログインする:
+---------------+-------------+-------------+-------------+
| auto_id | username | password | user_id |
+---------------+-------------+-------------+-------------+
| 0 | a | b | 1 |
+---------------+-------------+-------------+-------------+
| 1 | c | d | 2 |
+---------------+-------------+-------------+-------------+
| 2 | e | f | 3 |
+---------------+-------------+-------------+-------------+
私のphpログインバリデーターは次のとおりです。
<?php
session_start();
require_once('php/config.php');
if(isset($_POST['submit'])){
$username = $_POST['user_name'];
$password = $_POST['pwd'];
$user_id_col = "3";
$stmt = $con->prepare("SELECT * FROM tapp_login WHERE username = ? AND password = ? LIMIT 1");
$stmt->bind_param('ss', $username, $password);
$stmt->execute();
$stmt->bind_result($username, $password);
$stmt->store_result();
if($stmt->num_rows == 1) //To check if the row exists
{
while($stmt->fetch())
{
$_SESSION['LOGIN_STATUS']=true;
$_SESSION['user_name'] = $username;
$_SESSION['user_id'] = $user_id;
echo 'true';
}
}
else {
echo 'false';
}
$stmt->close();
}
else{
}
$con->close();
?>