2016-11-28 75 views
0

鉻檢查文件爲空。所有其他頁面都正常工作並顯示基本表單。從未遇到像這樣的錯誤。當把表單放到html中時,它自己的工作,但我無法得到與SQL DB正確通信。任何可以提供的幫助將不勝感激。PHP頁面將不會加載

<?php 

//Connects to your Database 
$conect = mysqli_connect("db location","username","password", "forks") or die(mysql_error()); 

//Checks if there is a login cookie 
if(isset($_COOKIE['ID_your_site'])){ //if there is, it logs you in and directes you to the members page 
    $username = $_COOKIE['ID_your_site']; 
    $pass = $_COOKIE['Key_your_site']; 
    $check = mysqli_query($conect, "SELECT * FROM users WHERE username = '$username'")or die(mysql_error()); 

    while($info = mysqli_fetch_array($check)){ 
     if ($pass != $info['password']){} 
     else{ 
      header("Location: login.php"); 
     } 
    } 
} 

//if the login form is submitted 
if (isset($_POST['submit'])) { 

    // makes sure they filled it in 
    if(!$_POST['username']){ 
     die('You did not fill in a username.'); 
    } 
    if(!$_POST['pass']){ 
     die('You did not fill in a password.'); 
    } 

    // checks it against the database 
    if (!get_magic_quotes_gpc()){ 
     $_POST['email'] = addslashes($_POST['email']); 
    } 

    $check = mysqli_query($conect, "SELECT * FROM users WHERE username = '".$_POST['username']."'")or die(mysql_error()); 

//Gives error if user dosen't exist 
$check2 = mysqli_num_rows($check); 
if ($check2 == 0){ 
    die('That user does not exist in our database.<br /><br />If you think this is wrong <a href="login.php">try again</a>.'); 
} 

while($info = mysqli_fetch_array($check)){ 
    $_POST['pass'] = stripslashes($_POST['pass']); 
    $info['password'] = stripslashes($info['password']); 
    $_POST['pass'] = md5($_POST['pass']); 

    //gives error if the password is wrong 
    if ($_POST['pass'] != $info['password']){ 
     die('Incorrect password, please <a href="login.php">try again</a>.'); 
    } 

    else{ // if login is ok then we add a cookie 
     $_POST['username'] = stripslashes($_POST['username']); 
     $hour = time() + 3600; 
     setcookie(ID_your_site, $_POST['username'], $hour); 
     setcookie(Key_your_site, $_POST['pass'], $hour);  

     //then redirect them to the members area 
     header("Location: members.php"); 
    } 
} 
} 
else{ 
// if they are not logged in 
?> 

<form action="<?php echo $_SERVER['PHP_SELF']?>" method="post"> 

<table border="0"> 

<tr><td colspan=2><h1>Login</h1></td></tr> 

<tr><td>Username:</td><td> 

<input type="text" name="username" maxlength="40"> 

</td></tr> 

<tr><td>Password:</td><td> 

<input type="password" name="pass" maxlength="50"> 

</td></tr> 

<tr><td colspan="2" align="right"> 

<input type="submit" name="submit" value="Login"> 

</td></tr> 

</table> 

</form> 

<?php 
} 
?> 

正如你所看到的形式是一個通用的HTML格式不帶格式,因爲它是我打算離開直到一切功能。

+0

您提供展示形式,而不是一個空白頁面的代碼,因此,這是不足夠的信息來重現你的問題描述。也請不要使用具有'mysqli'函數的'mysql_error',使用'mysqli_error' –

+0

http://imgur.com/a/E0gp1這就是它在Web服務器上的顯示 –

+0

@matthew s請將答案標記爲接受if它幫助你解決你的問題來關閉這個線程。謝謝, – Learner

回答

0

相反的:

$conect = mysqli_connect("db location","username","password", "forks") or die(mysql_error()); 

試試這個:

$conect = new mysqli("db location","username","password", "forks"); 
if ($conect->connect_error) { 
    die('Connect Error (' . $conect->connect_errno . ') ' 
      . $conect->connect_error); 
} 

讓我知道了什麼錯誤,如果它不工作,它拋出。

+0

感謝兄弟的工作 –

+0

@matthew s請標記答案爲接受,如果它幫助你解決你的問題關閉此線程。謝謝, – Learner

0

試試這個

$check = mysqli_query($conect, "SELECT * FROM users WHERE username = '".$username."'") or die(mysqli_error($conect)); 

取而代之的是

$check = mysqli_query($conect, "SELECT * FROM users WHERE username = '$username'")or die(mysql_error());