2012-12-03 155 views
0

嘿家伙我正在创建一个简单的登录脚本。当我输入一个有效的用户名和密码时,该函数调用login_success.php,但没有任何反应。我用以下链接的资源:php登录脚本执行不正确

我还搜查了一些职位上这个网站也是如此。总是感激你的帮助。下面的代码:

的login.php

<?php 
ob_start(); 
include 'connect.php'; 

$usernamefield = $_POST['usernamefield']; 
$passwordfield = $_POST['passwordfield']; 

$sql = "SELECT * FROM login WHERE username = '$usernamefield' and password = '$passwordfield'"; 
$result = mysql_query($sql); 

$count = mysql_num_rows($result); 

if($count == 1) { 
    session_register("usernamefield"); 
    session_register("passwordfield"); 
    header("Location: login_success.php"); 
} else { 
    echo "Invalid username or password"; 
} 
exit(); 
?> 

login_success.php

<?php 
session_start(); 
if(!session_is_registered(myusername)){ 
    header("Location: login.php"); 
} 
?> 

<html> 
<body> 
Login Successful 
</body> 
</html> 

回答

1

session_start();在你的login.php文件的顶部。 使用$_SESSION['variable']='value';设置会话变量。 使用if(isset($_SESSION['variable'])){检查访问权限,并且应该完成。

session_register('variable');已被弃用,不应该被使用,session_is_registered('variable')一起:http://php.net/manual/en/function.session-register.php

如果你试图让这个在新的PHP安装工作,你也可能会被使用5.4.x版本,而这些功能已被删除,所以他们不工作。

+0

非常感谢蒂姆!现在进行更改。 –