PHP MySQLi查询没有返回值

时间:2016-07-21 08:43:41

标签: php mysql variables mysqli

我试图通过多种方式让它工作,但我无法通过此查询将Cost值从数据库返回到$ cost变量:

$query2 =  "SELECT Cost FROM 'item' WHERE Item = '$item'";
$cost=  $db->query($query2);

当我试图回应它时似乎是空的。

($ item变量是从mySQL-db中的item-table生成的下拉列表中选择的。这样可以正常工作,如果我回显$ item的值,它会按预期返回项目的名称。)

任何人都能看到我做错了什么?

如果有必要,我可以发布完整的代码,但我相信这个解释可能就足够了。

4 个答案:

答案 0 :(得分:0)

您必须声明'fetch_array'并参考此网址:http://php.net/manual/en/mysqli-result.fetch-array.php

例如: -

$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";

$result = $mysqli->query($query);

$row = $result->fetch_array(MYSQLI_NUM);

答案 1 :(得分:0)

$query2 = "SELECT Cost FROM 'item' WHERE Item = '$item'";更改为
$query2 = "SELECT Cost FROM item WHERE item = '".$item."'";
假设Cost是您的列名,第一个item是您的表名,第二个item是另一个列名(请更改您的命名约定,不要对表和列使用相同的名称)。为了使您的问题更加清晰,请向我们提供您的表名,列名,以便我们为您提供更准确的答案。

此外,您需要使用$item来转义'".$item."'变量,以便您可以使用该变量从数据库中进行查询。

然后,您需要从查询数据库中获取结果 $results = $db->fetch_all($cost);
要测试数据是否已成功获取,您可以使用print_r($results);打印它来测试它。这应该返回一个结果数组。

答案 2 :(得分:0)

这可能会对你有帮助。

$input = "100";

$query = "select sal from sal where sal='$input'";
$result = mysql_query($query);

$row = mysql_fetch_row($result);
//This will print sal
echo $row['sal'];

如果您有任何疑问,请与我们联系。

答案 3 :(得分:0)

$query=mysql_query("SELECT Cost FROM item WHERE Item = '$item'");
while($x=mysql_fetch_array($query))
{
$cost=$x['Cost'];
echo $cost;    //here we can return the result 
}