当前位置:Gxlcms > PHP教程 > 《php和mysqlweb开发(原书第三版)》中创建CMS系统例子关于mysql的出错问题?

《php和mysqlweb开发(原书第三版)》中创建CMS系统例子关于mysql的出错问题?

时间:2021-07-01 10:21:17 帮助过:20人阅读

执行index.php文件时出现的问题,数据库已经建立。
错误提示:

Warning: mysqli::mysqli() [mysqli.mysqli]: (HY000/2003): Can't connect to MySQL server on 'localhost' (10061) in D:\apmxe\htdocs\28\db_fns.php on line 5

Warning: mysqli::query() [mysqli.query]: Couldn't fetch mysqli in D:\apmxe\htdocs\28\index.php on line 8

Fatal error: Call to a member function fetch_assoc() on a non-object in D:\apmxe\htdocs\28\index.php on line 12

开发环境:Apm express

请问这些问题如何解决呢?

补充:index.php连接数据库部分代码

$handle = db_connect();

  $pages_sql = 'select * from pages order by code';
  $pages_result = $handle->query($pages_sql);

  echo '';
      
  while ($pages = $pages_result->fetch_assoc()) 
  {
    $story_sql = "select * from stories
                  where page = '{$pages['code']}'
                  and published is not null
                  order by published desc";
   
    $story_result = $handle->query($story_sql);
    
    if ($story_result->num_rows) 
    {
      $story = $story_result->fetch_assoc();
      echo "

{$pages['description']}

{$story['headline']}

";
/*db_connect函数功能*/
function db_connect()
{
   $handle = new mysqli('localhost', 'content', 'password', 'content'); 
   if (!$handle)
   {
     return false;
   }
   return $handle;
}

回复内容:

执行index.php文件时出现的问题,数据库已经建立。
错误提示:

Warning: mysqli::mysqli() [mysqli.mysqli]: (HY000/2003): Can't connect to MySQL server on 'localhost' (10061) in D:\apmxe\htdocs\28\db_fns.php on line 5

Warning: mysqli::query() [mysqli.query]: Couldn't fetch mysqli in D:\apmxe\htdocs\28\index.php on line 8

Fatal error: Call to a member function fetch_assoc() on a non-object in D:\apmxe\htdocs\28\index.php on line 12

开发环境:Apm express

请问这些问题如何解决呢?

补充:index.php连接数据库部分代码

$handle = db_connect();

  $pages_sql = 'select * from pages order by code';
  $pages_result = $handle->query($pages_sql);

  echo '';
      
  while ($pages = $pages_result->fetch_assoc()) 
  {
    $story_sql = "select * from stories
                  where page = '{$pages['code']}'
                  and published is not null
                  order by published desc";
   
    $story_result = $handle->query($story_sql);
    
    if ($story_result->num_rows) 
    {
      $story = $story_result->fetch_assoc();
      echo "

{$pages['description']}

{$story['headline']}

";
/*db_connect函数功能*/
function db_connect()
{
   $handle = new mysqli('localhost', 'content', 'password', 'content'); 
   if (!$handle)
   {
     return false;
   }
   return $handle;
}

mysqli链接的密码,账户都对吗????

首先确认你构造mysqli对象的时候,所有的参数都是正确的,这四个参数依次是数据库地址,用户名,密码,数据库名。其中数据库用户名和密码,你要确认下是否填写正确了。

然后确认你的数据库是否启动了(很多人确实忘了)。在命令行下输入

telnet localhost 3306

看看是否能够连接上

人气教程排行