PHP ログイン スクリプトで非常に難しい (見つけにくい) 問題が発生しています。セッションを使用して、標準の送信フォームでログインを機能させ、次のスクリプトを使用しています。
public function login($user, $password)
if (!empty($user) && !empty($password))
{
$user = $web->esc($user);
$password = $web->Hash($user, $password);
$db->selectDb('login');
$qw = mysql_query("SELECT * FROM account WHERE username='".$user."' AND pass='".$password."'");
if (mysql_num_rows($qw) > 0)
{
$result = mysql_fetch_array($qw);
$_SESSION['user_name'] = $result['username'];
$_SESSION['user_id'] = $result['id'];
return true;
...
...
そしてログインでは、次のようなものを使用しています:
if(isset($_POST["send"]))
{
if($auth->login($_POST["name"], $_POST["pass"]))
{
header("location: ./");
}
}
else
...
...
問題なく動作していますが、Opera や他のブラウザでは問題が発生することがあります。たとえば、Opera、Google Chromeなどにログインすると、フォームに入力して送信します-ログインフォームに「スタック」するだけで、ログイン後にページが表示されません-他のブラウザーでは機能しています-私はそうしません一部のブラウザで動作しない理由を参照してください。これを修正する方法はありますか?ありがとうございました。