当文件从localhost移动到serv时,登录表单工作不起作用


Login form working not working when files move from localhost to serv

我在我的系统中开发了以下代码。在我的本地主机中,一切都很正常。

但是当我试图将文件从localhost移动到服务器登录表单时,无法正常工作

<?php
session_start();
include 'config.php';
if(isset($_POST['sub']))
{
$myusername=$_POST['txtuname']; 
$mypassword=$_POST['txtpwd']; 
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM member WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "members.php"
$_SESSION['myusername']=$myusername;
if(isset($_SESSION['myusername']))
header("location:members.php");
}
else {
echo "<b><div style='"color:red;'">Invalid Username or Password</div></b>";
}
}
?>
Html
-----
<form name="reg" action="" onsubmit="return validateForm()" method="post">
                        Username
                        <br><input type="text" name="txtuname"><br>
                        Password 
                        <br>
                        <input type="text" name="txtpwd"><br>
                        <input type="submit" value="Login" name="sub"><br>
                        <a href="forgot.php">Lost your password?</a>
                    </form>

members.php
----------
<?php
session_start();
$sid=$_SESSION['myusername'];
if($_SESSION['myusername']=="")
{
header("location:index.php");
}
?>

config.php

<?php
define('DB_SERVER', 'localhost'); // Mysql hostname, usually localhost
define('DB_USERNAME', 'dbuser'); // Mysql username
define('DB_PASSWORD', 'dbpass'); // Mysql password
define('DB_DATABASE', 'dbname'); // Mysql database name
$connection = mysql_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD) or die(mysql_error());
$database = mysql_select_db(DB_DATABASE) or die(mysql_error());
?>

以上所有代码在我的XAMPP服务器中都能完美工作但当我将这些文件从localhost移动到服务器时,时间登录表单不能正常工作

当我输入正确的用户名和密码时,它不会重定向到members.php

如果我输入的用户名和密码是错误的,它会显示无效的用户名密码消息

请帮助我任何人错误在哪里

如果没有看到任何错误,可能会禁用PHP错误报告。在PHP文件的头中,插入以下内容:

error_reporting(E_ALL);
ini_set('display_errors', 1);

另外,将 or die mysql_error();附加到所有DB查询中。例如:

$result=mysql_query($sql) or die(mysql_error());

我建议调查以下内容:

  1. 检查数据库凭据
  2. 确保数据库中的数据在…而不仅仅是一个空表中
  3. 查看运行文件时出现的任何错误
  4. 如果可用,请在其他服务器上尝试您的代码。。。或者甚至在另一个文件夹中重新设置它,并使用不同的数据库,看看是否可以在本地以完全相同的方式运行它