Php连接但未能选择数据库

时间:2017-11-12 07:57:29

标签: php mysql mysqli

我无法让php连接到共享主机上的mysql数据库。这在我的MAMP本地服务器上有效。

我收到以下错误:

错误:未选择数据库警告:mysqli_fetch_array()要求参数1为mysqli_result,布尔值在第34行的/hermes/bosnaweb03b/b2270/ipg.theburguersaredownco/cheval/main.php中给出

我的db_connect php文件:

 <?php
$connect = mysqli_connect('theburguersaredownco.ipagemysql.com', 'user', 'password');
if (!$connect) {
    die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully';
mysqli_select_db('db_cheval'); 
?>

我收到消息:&#34;已成功连接&#34;,所以我假设已建立与数据库的连接,因此mysql_connect函数或其任何参数(即用户和密码)都没有问题是正确的等等......)。

我的main.php文件:

<?php
  include 'db_connect.php';
  include 'header.php';

  error_reporting( E_ALL );
  ini_set( "display_errors", 1 );
  ?>

<a id="roundLogo" href="index.php" class="not-active"></a><div>

</div></a>

<div id="subheader" class="notVisible">

  <nav id="menu2">
    <ul>
  <?php
      $query = mysqli_query($connect,"SELECT * FROM categories");

      if (!$query) {
          printf("Error: %s\n", mysqli_error($connect));
          // exit();
      }

      while ($q = mysqli_fetch_array($query)) {

        if($q['id']<4){ ?>

etc...

第34行就是这个:

  while ($q = mysqli_fetch_array($query)) {

这是我第一次这样做,我是php和mysql的新手,所以我没有太多的经验。有人可以帮我找到问题。我该怎么调试呢?

谢谢

1 个答案:

答案 0 :(得分:1)

即使您在托管服务器或本地网络服务器上运行,也应该使用 localhost 作为主机参数,但 mysqli_select_db 中的参数问题是“ >未选择数据库“返回

$connect=mysqli_connect("localhost","my_user","my_password","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }    
mysqli_select_db($connect,"db_cheval");