2013-05-27 101 views
-1

嗨,我不能让我的phpBB论坛登录脚本工作,如果($_POST['login']),我刚刚张贴的线路是一些如何不工作?我真的不知道为什么,但我真的需要这个为我的主站点可以帮助你吗? www.zaoby.co.ukPHP登录脚本不起作用?

<?php 

//ob 
ob_start(); 

//session 
session_start(); 

//connect 
$error = 'Zaoby Database ERROR! connection failture!'; 
mysql_connect('localhost','root','') or die ($error); 
mysql_select_db('phpbbtest') or die($error); 

//include functions.php php script 
require 'forums/includes/functions.php'; 

if ($_POST['login']) "THIS PART IS COMING UP IN A ERROR BOX" 
{ 
//get form data 
$username = addslashes(strip_tags(strtolower($_POST['username']))); 
$password = addslashes(strip_tags($_POST['password'])); 

if (!$username||!$password) 
echo "please enter a username and password<p />"; 
else 
{ 
    //find username 
    $find = mysql_query("SELECT * FROM phpbb_users WHERE username_clean='$username'"); 
    if (mysql_num_rows($find)==0) 
    echo "username not found<p />"; 
    else 
    { 
    while ($find_row = mysql_fetch_assoc($find)) 
    { 
    // grab password hash for user 
    $password_hash = $find_row['user_password']; 
    } 

    $check = phpbb_check_hash($password, $password_hash); 
    if ($check==FALSE) 
    echo "Incorrect password<p />"; 
else if ($check==TRUE) 
{ 
    $_SESSION['username']=$username; 
    header("Location: main.php"); 
    exit(); 
} 

    } 
} 
} 
?> 

<form action="login.php" method="POST"> 
Username:<br /> 
<input type="text" name="username"><p /> 
Password:<br /> 
<input type="password" name="password"><p /> 
<input type="submit" name="login" value="Log in"> 
</form> 
+2

你没有关闭' andrewsi

+0

检查,如果你是'$ _ SERVER [ 'REQUEST_METHOD'] === “POST”'发布。 –

+0

是什么意思它不工作?你有一个白页?您提交但保持未记录?请解释一下自己,否则我们无法帮忙。但首先,关闭您的代码,如第一个注释说明应该解决一些问题... – ffarquet

回答

0

有时这是规则之前,实际上导致错误。
require '../forums/includes/functions.php';

我假设你使用functions.php来使用这个:phpbb_check_hash(); ?

如果没有加载的functions.php就会完全停止,因为你使用的需要,并不会出现像密码不正确,因为即使$检查均是假的脚本停止任何回音的。你可以试试,把你的../before路径,你可以尝试使用包括,看它是否有差别。

从W3Schools的:
包括和要求是相同的,只是在出现故障时

  • 要求会产生一个致命错误(E_COMPILE_ERROR)和停止脚本
  • 包括只会产生一个警告(E_WARNING)和该脚本将继续

干杯