为什么我的代码在一台服务器上运行,而在另一台服

时间:2014-07-14 18:38:34

标签: php mysql

以下代码在我的大学服务器上运行得很好,但是我没有为我付过的私人代码工作。

问题出在:

            header("Location: products.php");
        }
    } else {
        echo "Invalid username or password!";
    }

如果我输入了错误的名称/密码,代码就会按预期回应。  但如果用户正确输入他们的详细信息,则根本没有任何事情发生!

我是PHP的新手,所以我不知道从哪里开始排除故障,但我已经尝试更换"标题("位置:products.php");&#34 ;虽然有回音,但仍无济于事。

我还认为PHPmyadmin服务器可能是不同的版本,或者字符编码可能会导致一些麻烦。

这是完整的代码。

任何帮助都绝对值得赞赏!

<?php

if(isset($_POST["submit"])){
    $user=$_POST['user'];
    $pass=$_POST['pass'];
    $username = "";
    $password = "";
    $hostname = ""; 
    $md5pass = md5($pass);

    //connection to the database
    $dbhandle = mysqli_connect($hostname, $username, $password);

    $con=mysql_connect($hostname, $username, $password) or die(mysql_error());
    $select=mysql_select_db("l1233156", $con) or die("cannot select DB");

    $query=mysql_query("SELECT * FROM login WHERE username='".$user."' AND password='".$md5pass."'");
    $numrows=mysql_num_rows($query);
    if($numrows!=0)
    {
        while($row=mysql_fetch_assoc($query))
        {
            $dbusername=$row['username'];
            $dbpassword=$row['password'];
        }

        if($user == $dbusername && $md5pass == $dbpassword)
        {
            session_start();
            $_SESSION['sess_user']=$user;

            /* Redirect browser */
            header("Location: products.php");
        }
    } else {
        echo "Invalid username or password!";
    }
}
?><!doctype html> 
<html>
<head>
<title>Login</title>
<link rel="stylesheet" href="main.css"/>
</head>
<body>
<div class="center">
<p><a href="register.php">Register</a> | <a href="login.php">Login</a></p>
<h3>Login Form</h3>
<form action="" method="POST">
Username: <input type="text" name="user"><br />
Password: <input type="password" name="pass"><br /> 
<input type="submit" value="Login" name="submit" />
</form>
</div>
</body>
</html>

编辑: 这是我设法从错误日志中获取的。

  

[Mon Jul 14 10:30:34.134187 2014] [autoindex:error] [pid 28718:tid 140153014126336] [client 86.153.7.34:55032] AH01276:无法提供目录/ home / joesadmin123 / public_html / productreviews /:否匹配DirectoryIndex(index.html.var,index.htm,index.html,index.xhtml,index.wml,index.perl,index.pl,index.plx,index.ppl,index.cgi,index.jsp,index的.js,index.jp,index.php4,index.php3,index.php中,index.phtml,index.shtml default.htm,方法default.html中,home.htm,index.php5,default.html中,Default.htm的,home.html,welcome.html)found,以及Options指令禁止的服务器生成的目录索引

1 个答案:

答案 0 :(得分:0)

- 尝试使用元标记刷新 -

<?php
if($user == $dbusername && $md5pass == $dbpassword)
{
session_start();
$_SESSION['sess_user']=$user;
?>
<html>
  <head>
    <META http-equiv="refresh" content="5;URL=/<?php echo 'products.php'; ?>">
  </head>
  <body>
  </body>
</html>
<?php
}
?>