duanjiushu5063 2014-12-16 12:32
浏览 77

“没有数据库选择”错误与mysql_query [重复]

This question already has an answer here:

Here is my php code

<?php
error_reporting(E_ALL);

class ll{
          function ll(){
            include "sql.php";
          }

         function getUser($ID) {
            $sql="select * FROM users where ID=$ID";
            $res = mysql_query($sql) or die (mysql_error());
            $obj = mysql_fetch_object($res);
            return $obj;
    }

        function setOfflineALL() {
            $sql="update users set online=0";
            mysql_query($sql);
        }

 }
        $services = new ll();
        $services->setOfflineALL(); // THIS WORKS !
        $services->getUser(1); // THIS GIVES error: No database selected 


        ?>

and sql.php is:

<?php   $hostname_con1 = "localhost";
        $database_con1 = "db1";
        $username_con1 = "root";
        $password_con1 = "mypass";
        $con1 = mysql_connect($hostname_con1, $username_con1, $password_con1) or trigger_error(mysql_error(),E_USER_ERROR);
        mysql_select_db($database_con1);
        mysql_set_charset('utf8',$con1);

?>
  • sql.php is correct (no error)
  • setOfflineALL works fine (no error)
  • getUser raises "no database selected error !", however I do select one with mysql_select_db

I do use php5.4

Any clue ?

I also tried:

function getUser($ID) {
            $hostname_con1 = "localhost";
            $database_con1 = "db1";
            $username_con1 = "root";
            $password_con1 = "mypass";
            $con1 = mysql_connect($hostname_con1, $username_con1, $password_con1) or trigger_error(mysql_error(),E_USER_ERROR);
            mysql_select_db($database_con1);
            mysql_set_charset('utf8',$con1);

                $sql="select * FROM users where ID=$ID";
                $res = mysql_query($sql) or die (mysql_error());
                $obj = mysql_fetch_object($res);
                return $obj;
        }

And still have error: No database selected

</div>
  • 写回答

1条回答 默认 最新

  • duanfu7994 2014-12-16 12:35
    关注

    You should try this:

    mysql_select_db($database_con1, $con1);
    

    And you should give your database variable to your query too:

    mysql_query("query", $con1);
    

    And I strongly advise you not to use mysql but use PDO or mysqli PDO Mysqli

    评论

报告相同问题?

悬赏问题

  • ¥15 孟德尔随机化结果不一致
  • ¥20 求用stm32f103c6t6在lcd1206上显示Door is open和password:
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法