0

我使用以下脚本作为我的检查登录名和登录名:

<?php
        
   include('../db_connections/aardb_conn.php'); 
   session_start(); 
   
         #***********************************
         # get info from form.
         #***********************************
        
            $myusername=$_POST['email']; 
            $mypassword=$_POST['pass']; 
            
             
                 $sql="SELECT * FROM users WHERE email='$myusername' and password='$mypassword'";
               
      $result=mysql_query($sql, $db_conn);
      $count=mysql_num_rows($result);

       if ($count==1)
       {
         session_register("my_username");
         session_register("userid");
         $row = mysql_fetch_assoc($result) ;
         $_SESSION['my_username']= $row[fname]." ".$row[lname] ;
         $_SESSION['userid']=$row[autoid] ;
         
          mysql_free_result($result);
              
              header("location:../account.php");
             }#end of if
        else 
           {  
              header("location:../attempt.php");
        }#end of else
?>

但我收到以下错误:

已弃用:第 35 行的 /home/content/80/11429180/html/admin/logs/checklogin.php 中已弃用函数 session_register()

已弃用:第 36 行的 /home/content/80/11429180/html/admin/logs/checklogin.php 中已弃用函数 session_register()

警告:无法修改标头信息 - 标头已由 /home/content/80/11429180/html/admin/ 中的(输出开始于 /home/content/80/11429180/html/admin/logs/checklogin.php:35)发送第 43 行的日志/checklogin.php

4

4 回答 4

2

而不是使用 session_register,使用:

$_SESSION["my_variable"] = 'Hello';

它是创建会话变量的推荐方法,我认为您会同意它比使用 session_register 更干净:

$test = "Hello";
session_register("test");
于 2013-11-06T11:13:40.747 回答
1

自 PHP 5.3.0 起,该函数已被弃用,自 PHP 5.4.0 起已移除。

在旧版本的 PHP 5.3 中

    session_register("nameofthesession");

新的 PHP 版本 5.3(之后)

    $_SESSION['nameofthesession'] = $nameofthesession;
于 2013-11-06T11:20:57.050 回答
1

手册页

// Use of $_SESSION is preferred, as of PHP 4.1.0
$_SESSION["zim"] = "An invader from another planet.";
于 2013-11-06T11:13:21.350 回答
0

只是避免session_register()

直接使用这个

$_SESSION['name']=$name;
于 2016-07-26T08:25:44.553 回答