Godaddy:登录无效

问题描述:

美好的一天!Godaddy:登录无效

我正在做我的简单网站。它有一个登录页面。在我的本地主机中一切正常。我可以成功登录。

所以,现在。我已经将我的网站和数据库一起上传到Godaddy。

现在,如果我使用正确的凭据登录,与我在本地主机上做的相同。我无法登录。它将我重定向回登录页面。没有错误抛出。

但是,如果我有错误的凭据登录,它将引发我一个错误“错误的用户名或密码” - >这是我的login.php

内,这意味着我必须能够与数据库成功地权联系?可能是什么问题?

我正在使用XAMPP 7.1.1,我认为这是最新的,因为我刚刚下载了这个上周。我还注意到,GoDaddy的PHP版本是5.6

我已经为服务器

dname = myDB; 
lhost = localhost; 
uname = username; 
pword = password; 

PS配置的凭据:此证书是不是我的确切凭据。

我也试过

dname = myDB; 
lhost = website ip address; 
uname = username; 
pword = password; 

仍然没有运气=(

编辑:用于登录PHP脚本

<?php 
require("../../includes/bootstrap.php"); 
require("../../templates/user/users/login.php"); 
session_save_path("../../cgi-bin/tmp"); 
session_start(); 
session_regenerate_id(); 
try{ 
$ACCOUNT_SECURITY = new CORE_ACCOUNT_SECURITY(); 
$ACCOUNT_SECURITY->blocking(); 
if(isset($_POST['username']) && $_POST['password']){ 
    $sql = "SELECT * FROM users WHERE username=?"; 
    $SQL_CLASS = new SQL_SERVER_CONNECTION(); 
    $PDO_HANDLER = $SQL_CLASS->PDO_CONNECTION(); 

    $statement = $PDO_HANDLER->prepare($sql); 

    $statement->execute(array($_POST['username'])); 
    if($statement->rowCount()>0){ 
    $userdata = $statement->fetch(PDO::FETCH_ASSOC); 
    if(password_verify($_POST['password'], $userdata['password'])){ 
     $_SESSION['uid']=$userdata['id']; 
     $_SESSION['unm']=$userdata['username']; 
     $_SESSION['upriv']="user"; 
     $_SESSION['params']=[]; 
     header("location:user.php"); 
    }else{echo "Incorrect Username or password";sleep(3);exit;} 
    }else{echo "Incorrect Username or password";sleep(3);exit;} 
} 
}catch(Exception $e){ 
echo "Your Request is Temporarily Denied for Security Purpose"; 
} 
?> 

我已经把一个错误日志,这里是被抛出

[24-Apr-2017 04:19:50 UTC] PHP Strict Standards: Non-static method CORE_ACCOUNT_SECURITY::isloggedin() should not be called statically in /home/*****/public_html/user/users/user.php on line 6 

这是我user.php的

<?php 
require("../../includes/bootstrap.php"); 
session_save_path("../../cgi-bin/tmp"); 
session_start(); 
session_regenerate_id(); 
if(!CORE_ACCOUNT_SECURITY::isloggedin()){ 
header("location:login.php");  
exit; 
}else{  
if($_SESSION['upriv']=='user'){ 
    require("../../templates/user/users/user.php"); 
}else{header("location:../../");}       
} 
?> 
+0

检查您的cPanel的数据库域名。根据我的经验,这可能与webhosting IP不同。你可以通过你的cPanel获得管理员权限吗? –

+0

而不是在你的catch中回显'Request Denied ...'。尝试回显$ e-> getMessage();应该给你失败的原因 –

+0

@JasonJoslin,好主意=)等待一秒 – Maki

数据库的详细信息都没有被列为PHP变量,所以你不会是能够做到mysqli_connect($dbname,$lhost,$uname,$pword)。它可能无法解决它,但没有提供其他细节,因此很难排除故障。尝试提供您的PHP脚本。

+0

完成!请检查我的编辑 – Maki

有可能是你需要检查几件事情:

  1. 请检查文件权限,可能是没有
  2. 您可以检查错误日志,以获取究竟发生了正确的权限。通常情况下,godaddy给你错误日志How to get Godaddy Error logs
  3. 请检查您的数据库配置正确的设置。

这将是最好的,如果你能提供你的相关的PHP代码。

+0

你可以尝试添加ob_start();在脚本的顶部。看起来你可能有多个标题问题。您可以启用错误显示和观察者。它可能会告诉你错误。 – shojibur

+0

1.检查一切。我试试这个3.这是正确的。正如你所看到的,我可以使用错误的凭据登录。 – Maki

+0

出现错误 – Maki