0

我是 php 新手,想知道是否有人可以帮助我调试,出现以下错误。致命错误:调用未定义的函数 session_register()

它发生在我让用户登录时。

PHP

<?php
include("config.php");
session_start();
if($_SERVER["REQUEST_METHOD"] == "POST")
{
// username and password sent from Form 
$myusername=addslashes($_POST['username']); 
$mypassword=addslashes($_POST['password']); 

$sql="SELECT id FROM admin WHERE username='$myusername' and passcode='$mypassword'";
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
$active=$row['active'];
$count=mysql_num_rows($result);


// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1)
{
session_register("myusername");
$_SESSION['login_user']=$myusername;

header("location: welcome.php");
}
else 
{
$error="Your Login Name or Password is invalid";
}
}
?>

它在第 16 行抛出的错误是

$active=$row['active'];
4

2 回答 2

3

如果您查看 php 手册,您会看到它已被弃用

你如何使用$_SESSION变量?

$_SESSION["myusername"] = $username;
于 2013-03-02T20:54:32.003 回答
2

首先你只select id来自数据库,所以没有$row['active']. 更改$row['active']$row[0]['id']

并且不要使用session_register("myusername");使用$_SESSION['myusername']=="something"

您可以将查询更改为select id,username ...然后设置$_SESSION['myusername']=$row[0]['username'];

当然这种方法不好,但是对于初学者来说应该这样做;

于 2013-03-02T20:54:55.710 回答