MySQL查询在localhost上工作正常但在服务器上没有

时间:2014-08-22 08:14:36

标签: php mysql sql

我的查询在localhost上运行得非常好但是 当我在服务器上执行此操作时,查询成功通过但是 它将自己重定向到login.php并显示登录查询,而不是在welcome.php页面上

假设 当我输入用户名/密码时,它会将自己重定向到login.php 使用成功的MySQL语法查询.. 和查询在屏幕上显示

就像我的用户名是v@v.com 密码v 然后在按下登录按钮后,它将我重定向到login.php而不是welcome.php,在屏幕上显示此查询的查询

SELECT * FROM members WHERE username = 'v@v.com' AND pas = '7a38d8cbd20d9932ba948efaa364bb62651d5ad4'

这是我的代码“login.php”

<?php
        //Start session
        session_start();

        //Connect to mysql server
        include('config.php');




        function clean($str) {
            $str = @trim($str);
            if(get_magic_quotes_gpc()) {
                $str = stripslashes($str);
            }
            return mysql_real_escape_string($str);
        }
        $a = clean($_POST['username']);
        $password = clean($_POST['password1']);
         $passwordx= sha1($password); 





        //Create query
        $qry="SELECT * FROM members WHERE username = '$a' AND pas= '$passwordx'";
        $result=mysql_query($qry);
        echo $qry;
        //Check whether the query was successful or not
        if($result) {
            if(mysql_num_rows($result) > 0) {
                //Login Successful
                session_regenerate_id();
                $member = mysql_fetch_assoc($result);
                $_SESSION['SESS_MEMBER_ID'] = $member['id'];
                $_SESSION['SESS_FIRST_NAME'] = $member['fname'];

                $number=$member['number'];

                if($number=='1')
                {
                mysql_query("UPDATE members SET number=number+1 WHERE id='".$_SESSION['SESS_MEMBER_ID'] ."'  ") ;           
                header("location: info.php");
                exit();
                }
                else
                {
                header("location: welcome.php");
                exit();
                }

            exit();
            } elseif(mysql_num_rows($result) == 0){

                header("location: error.php");
                exit();
            }
        } else {
            header("location: error.php");
            exit();
        }
    ?>

有人能发现错误吗?

1 个答案:

答案 0 :(得分:1)

这:echo $qry;

执行此操作后,您无法使用header()重定向。

从文档(http://php.net/manual/en/function.header.php):

  

请记住,在任何实际输出之前必须调用header()   通过普通HTML标记,文件中的空行或PHP发送。