[英]Query fails when getting data from MySQL database
我正在嘗試從我在phpMyAdmin中創建的數據庫中獲取數據。 我的問題是,但是我更改了我的查詢,我使用mysql_error()
函數得到了相同類型的錯誤消息:
您的SQL語法有錯誤; 檢查與MySQL服務器版本對應的手冊,以便在第1行的“食物”附近使用正確的語法
PHP代碼索引文件:
<?php
require 'connect.inc.php';
$query = "SELECT 'food_type', 'calories' FROM 'foods'";
if($query_run = mysql_query($query)){
while ($query_row = mysql_fetch_assoc($query_run)){
$food = $query_row('food_type');
$calories = $query_row('calories');
echo $food.' has '.$calories.' calories ';
}
}else{
echo mysql_error();
}
?>
PHP代碼數據庫連接文件:
<?php
$connectionError = 'Can\'t connect.';
$mySqlHost = 'localhost';
$mySqlUser = 'root';
$mySqlPassword = 'Bhu8Nji9';
$mySqlDataBase = 'my_first_database';
if(!@mysql_connect($mySqlHost, $mySqlUser, $mySqlPassword) || !@mysql_select_db($mySqlDataBase)){
die($connectionError);
}else{
//echo 'Connected';
}
?>
重寫您的查詢[使用反引號而不是單引號]
$query = "SELECT 'food_type', 'calories' FROM 'foods'";
至
$query = "SELECT `food_type`, `calories` FROM foods";
用這個..
$result = mysql_query("SELECT food_type,calories FROM foods");
while($row = mysql_fetch_array($result))
{...}
不要在表名和字段名周圍使用單引號。
$query = "SELECT food_type, calories FROM foods";
還要避免使用mysql_ *函數。
閱讀以下內容,了解何時或為何使用反引號
你可以嘗試一下嗎,在食物中添加反引號
$query = "SELECT food_type, calories FROM `foods`";
關於未知列名稱的問題,您應該使用反引號:
$query = "SELECT `food_type`, `calories` FROM foods";
您的查詢中存在語法錯誤。 它應該如下,
$query = "SELECT food_type, calories FROM `foods`";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.