2016-07-28 28 views
0

即使所有权限都提供给本地主机,我仍然收到该错误。我可以从相同的用户名/密码插入数据,但不会检索它。对用户''@'localhost'拒绝表'任务'的SELECT命令

我已经尝试在的config.inc.php评论的线路和执行GRANT的方法。

这里的下面

<?php 
     $servername = "localhost"; 
     $username = "root"; 
     $password = ""; 
     $dbname = "to_do_list"; 

     // Create connection 
     $conn = new mysqli($servername, $username, $password, $dbname); 
     // Check connection 
     if ($conn->connect_error) { 
      die("Connection failed: " . $conn->connect_error); 
     } 

     $query = "SELECT `task`, `date_of_task`, `time_of_task`,`id` FROM `to_do_list`.`tasks`;"; 

     $result = mysql_query($query) or die($query."<br/><br/>".mysql_error()); 


     while($row = mysql_fetch_array($result)){   
     echo "<tr>". 
     "<td>" . $row['task'] . "</td>". 
     "<td>" . $row['date_of_task'] . "</td>". 
     "<td>" . $row['time_of_task'] . "</td>". 
     "<td> <button value=\"Edit\" class=\"btn btn-warning\"> </td>". 
     "<td> <button value=\"Edit\" class=\"btn btn-warning\"> </td>". 
     "</tr>"; 
     } 
     mysql_close(); 
    ?> 

感谢我的代码。

+0

从$ conn-> connect_error中得到错误吗? – McStuffins

+0

btw:您可以在'FROM'子句中省略数据库名称。数据库由连接预先选择。 –

+0

@Robert我在这个时候得到错误 $ result = mysql_query($ query)或者死($ query。“

”.mysql_error()); 我已通过删除它然后执行代码进行检查。这工作正常 – Xissor

回答

0

我看到一个多余的分号在您的查询的末尾:

$query = "SELECT ... FROM `to_do_list`.`tasks`;"; 

除了您正在使用已被弃用MySQL的。

+0

我也尝试删除,然后执行它。获取相同的错误。 – Xissor

+0

The;在声明的结尾是必要的,因为php。 – McStuffins

0

更改为以下代码解决了我的问题。我认为这可能是由于使用查询作为变量的冲突。

$sql = "SELECT task,date_of_task,time_of_task,id FROM to_do_list.tasks;"; 
$result = $conn->query($sql) or die($sql."<br/><br/>".mysql_error()); 


if ($result-> num_rows > 0) { 
    // output data of each row 
    while ($row = $result->fetch_assoc()) 
+0

命名变量$ query或$ sql对PHP没有任何影响。 – Jocelyn

+0

感谢您的帮助。新的PHP,这就是为什么不知道它。 – Xissor

0

您正在打开与库MySQLi的连接:

$conn = new mysqli($servername, $username, $password, $dbname); 

然后你使用mysql_ *功能:

$result = mysql_query($query) or die($query."<br/><br/>".mysql_error()); 

while($row = mysql_fetch_array($result)){ 

更改您的密码只使用MySQLi functions,错误将消失。

相关问题