'保持联系/记住我'系统不工作(如果我取消勾选)


'Stay connected/Remember me' system doesn't work (if I uncheck it)

如果我检查remember me(具有有效的用户名和密码),它正在工作,但如果我想在没有检查remember me的情况下登录,那么它不工作。此外,如果我检查remember me(有效的用户名和无效的密码),它不工作。错误信息是:

致命错误:在C:'xampp'htdocs'new'tree'login.php第48行中,允许的内存大小为134217728字节已耗尽(试图分配7168字节)

如果我给出无效的用户名和密码,那么它不会显示任何错误消息。但我试着传达信息。我的代码如下:

login。

<?php
require_once( 'functions.php');
if(loogedin())
{
  header("Location: admin_dashboard_view.php" );
  exit();
}
if(isset($_POST['login']))
{
  $username=$_POST['username'];
  $password=$_POST['password'];
  $remember = isset($_POST['remember']);
  if($username && $password)
  {
    $login=mysql_query("SELECT * FROM admin WHERE username = '$username'");
    while($row=mysql_fetch_assoc($login))
    {
      $db_password = $row['password'];
      if($password==$db_password)
        $loginok=TRUE;
      else
        $loginok=FALSE;
      if($loginok==TRUE)
      {
        if($remember=="on")
          setcookie("username",$username,time()+7200);
        else if($remember==" ")
          $_SEESION['username']=$username;
          header('location: admin_dashboard_view.php');
          exit();   
      }
      else
      {
        include 'login.php';
        echo'<font color="red">Try again,User Name and Password not matched !</font>';
    }
    }        
   }
  else
  {     
    include 'login.php';
    echo'<font color="green">Try again,User Name and Password not matched     !</font>';
  }
}

function.php

<?php
session_start();
include 'connect.php';
function loogedin()
{
  if(isset($_SESSION['username']) || isset($_COOKIE['username']))
  {
    $loogedin=TRUE;
    return $loogedin;
  }
}

我是php的新手。请帮助我显示错误和解决方案

编辑php.ini文件。将memory_limit的值设置为-1。错误信息应该消失。

这不是一个永久的解决方案,但你需要监视什么已经消耗了你的资源。

也关闭你的连接一旦你的查询完成,不要使用mysql_*函数。使用mysqli_*PDO代替。