数据库连接时查询失败

问题描述:

我试图运行失败的基本SQL查询,即使我可以确认数据库已连接。使用mysql_error()不会给出错误消息。我被告知它可能是Apache权限问题,但我没有看到。数据库连接时查询失败

任何帮助或指导,非常感谢。

<?php 
    // 1. Create a database connection 
    $dbhost = "localhost"; 
    $dbname = "moneymouth"; 

    $connection = mysqli_connect($dbhost, $dbname); 

     // Test if connection succeeded 
    if(mysqli_connect_errno()) { 
     die("Database connection failed: " . 
      mysqli_connect_error() . 
      " (" . mysqli_connect_errno() . ")" 
     ); 
    } 
?> 

<?php 
    // 2. Perform database query 
    $query = "SELECT * FROM users"; 
    $result = mysqli_query ($connection, $query); 
    if (!$result){ 
     die ("Database query failed."); 
     ; 
    } 
?> 
+0

作为你的secound mysqli_connect()参数的指针,你已经标记了$ dbname参数应该是主机,用户名,密码,database_name –

+0

最后一个分号没用:它不是错误,但你可以保留它 – fusion3k

+0

你确定你可以使用“localhost”连接到数据库?与您的托管服务提供商联系另外,你的桌子上是否有用户?也许它正在运行,只是不显示任何东西。 – jjwdesign

是肯定第一部分,原因无误差形式mysql_error()

<?php 
$link = mysqli_connect("localhost", "my_user", "my_password", "my_db_name"); 

来源:http://php.net/manual/en/mysqli.query.php

似乎缺了点什么。

第二部分:需要

<?php 
    // 2. Perform database query 
    $query = "SELECT * FROM users;"; 
    $result = mysqli_query ($connection, $query); 
    if (!$result){ 
     die ("Database query failed."); 
    } 
?> 

尽量把;在查询结束后,在某些情况下,如果缺少它可能会导致错误。

die ("Database query failed.");之后删除;如果您忘记它并编写其他代码,它会给您一个错误。