2 PHP中的MySQL连接显示错误

时间:2015-03-29 12:26:07

标签: php html mysql

我的网页出现问题。

$server = mysql_connect($server_host, $server_user, $server_pass, true); 
mysql_select_db($server_db, $server);

$web = mysql_connect($foorum_host, $foorum_user, $foorum_pass); 
mysql_select_db($foorum_db, $web);

这是我的连接部分。

        if(isset($_POST['logisisse'])) {

        $user = mysql_real_escape_string($_POST['user']);
        $pass = mysql_real_escape_string($_POST['pass']);

        $osqlq = "SELECT * FROM mybb_users WHERE username='$user'";
        $asqlq = "SELECT username FROM mybb_users WHERE username='$user'";

        $osql = mysql_fetch_array(mysql_query($osqlq, $web));
        $asql = mysql_num_rows(mysql_query($asqlq, $web));

        $salt = $osql['salt'];

        if(empty($user) || empty($pass)) {
            echo '<div class="alert alert-danger">Täida kõik väljad.</div>';
        }
        else if($asql < 1) { // pole kasutajat
            echo'<div class="alert alert-danger">Sellist kasutajat ei eksisteeri.</div>';
        }
        else if($osql['pass'] != $hashedPassword) { // vale parool
            echo '<div class="alert alert-danger">Sisestasid vale parooli.</div>';
        }
    }
    echo '
                <aside class="widget widget_search">
                  <h3 class="widget-title">Logi sisse</h3>
                  <form role="login" method="post" class="validate-form" />
                    <div>
                      <label class="screen-reader-text" for="s">Logi sisse:</label>
                      <input type="text" value="" id="user" name="user" placeholder="Foorumi kasutajanimi" class="required" />
                      <input type="password" value="" id="pass" name="pass" placeholder="Parool" class="required" />
                      <br /><br />
                      <button id="logisisse" name="logisisse" value="Logi sisse" />
                    </div>
                  </form>
                </aside>
    ';

这就是问题所在,它给我一个这样的错误。

  

警告:mysql_query()期望参数2为resource,给定null   在/data03/virt47609/domeenid/www.example.com/htdocs/ucp/inc/mysql.php上   第32行

     

警告:mysql_fetch_array()期望参数1为resource,null   给定的   /data03/virt47609/domeenid/www.example.com/htdocs/ucp/inc/mysql.php on   第32行

     

警告:mysql_query()期望参数2为resource,给定null   在/data03/virt47609/domeenid/www.example.com/htdocs/ucp/inc/mysql.php上   第33行

     

警告:mysql_num_rows()期望参数1为resource,null   给定的   /data03/virt47609/domeenid/www.example.com/htdocs/ucp/inc/mysql.php on   第33行

“var_dump($ server)”给我“资源(2)类型(mysql链接)”但是在$ osql之前它给了我“NULL”

“var_dump($ web)”给了我“类型(mysql链接)的资源(3)”,同样到了这里。

第32和33行是

    $osql = mysql_fetch_array(mysql_query($osqlq, $web));
    $asql = mysql_num_rows(mysql_query($asqlq, $web));

我的MySQL连接也很完美。

我一直试图从谷歌搜索问题,但它没有帮助,也许你们可以帮助我。

2 个答案:

答案 0 :(得分:0)

添加如下错误处理:

<?php
$link = mysql_connect($server_host, $server_user, $server_pass, true); 
if (!$link) {
    die('Could not connect: ' . mysql_error());
}

?>

然后为第二次连接做同样的事情。 也不推荐使用mysql_ *函数。

为了测试,试试这个:

$server = mysql_connect($server_host, $server_user, $server_pass); 
mysql_select_db($server_db, $server);

$web = mysql_connect($foorum_host, $foorum_user, $foorum_pass, true); 
mysql_select_db($foorum_db, $web);

答案 1 :(得分:0)

我发现了问题。我的网页登录脚本是一个函数,我将函数复制到了登录脚本的位置,它就像魅力一样。