ログイン日時をテーブルのカラムに保存し
ログイン時に(最終ログイン日時)としてMy pageに表示させたいです
</html></body>
//ログイン日時設定の場所にどう記載すれば宜しいでしょうか?
宜しくお願いいたします。
保存先のDB CREATE,INSERT
CREATE TABLE userdata(
id int NOT NULL PRIMARY KEY,
name varchar NOTNULL
password varchar NOTNULL
sdate datetime NOTNULL
INSERT INTO userdata (
name,
passwrod,
adate
)
VALUES
( 'ma0808'
'Ma0808'
'0:%Y-%m-%d %H:%M:%S'
)
下記のコードからPOSTされたものが正しい場合
ログイン日時をDBに保存、取得したいです。
f (isset($_POST["login"])) {
// 1. ユーザIDの入力チェック
if (empty($_POST["userid"])) { //
$errorMessage = '※UserIDまたはPasswordが間違っています。'; } else if (empty($_POST["password"])) { $errorMessage = '※UserIDまたはPasswordが間違っています。'; } if (!empty($_POST["userid"]) && !empty($_POST["password"])) { $userid = $_POST["userid"]; $dsn = sprintf('mysql: host=%s; dbname=%s; charset=utf8', $db['host'], $db['dbname']); try { $pdo = new PDO($dsn, $db['user'], $db['pass'], array(PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION)); $stmt = $pdo->prepare('SELECT * FROM userdata WHERE name = ?'); $stmt->execute(array($userid)); $password = $_POST["password"]; if ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { // if (password_verify($password, $row['password'])) { if ($userid == $row['name'] || $password == $row['password']) { session_regenerate_id(true); $id = $row['id']; $sql = "SELECT * FROM userdata WHERE id = $id"; $stmt = $pdo->query($sql); foreach ($stmt as $row) { $row['name']; } $_SESSION["NAME"] = $row['name']; header("location: my.php"); exit(); } else { $errorMessage = '※UserIDまたはPasswordが間違っています。'; } catch (PDOException $e) { $errorMessage = 'データベースエラー'; //$errorMessage = $sql; // $e->getMessage() でエラー内容を参照可能(デバッグ時のみ表示) // echo $e->getMessage(); } }
}
?>