ログインスクリプトを作成しようとしていますが、問題が残っています:
<?php
session_start();
if (isset($_POST['username'])) {
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$query = mysql_query(
"SELECT id
FROM users
WHERE username = '$username'
AND password = '$password'"
);
if (mysql_num_rows($query) == 0) {
header('Location: ?error');
exit();
}
// assign id to session
$_SESSION['id'] = mysql_result($query, 0, 'id');
mysql_query(
"UPDATE users
SET last_activity = ".time()."
WHERE ".$_SESSION['id']
);
header("Location: /");
exit();
}
?>
このスクリプトの問題は、last_activity をすべてのユーザーの現在の時刻に設定することです。
問題を理解できません。
いくつかの助けが大いに役に立ちます。はい、パスワードの暗号化については後で調べます :P
編集:問題が見つかりました、そうあるべきですmysql_query("UPDATE users SET last_activity = ".time()." WHERE id = ".$_SESSION['id']);