Php 所选套餐必须向我显示正确的价格,但他向我显示了对中非对象的成员函数fetch_assoc()的错误调用

Php 所选套餐必须向我显示正确的价格,但他向我显示了对中非对象的成员函数fetch_assoc()的错误调用,php,javascript,mysqli,Php,Javascript,Mysqli,我想要的是,当我选择一顿饭时,他会告诉我这顿饭和正确的价格。现在他给我看食物,但当我选择其中一种食物时,出现了一个错误 错误: 对中的非对象调用成员函数fetch_assoc 当我在mwvp.php中时,此代码被删除。然后您会看到存储在数据库中的所有价格 您可以在下面看到原始代码中删除的代码 Change-fine.php <?php include ("connection.php"); ?> <!DOCTYPE html> <html> <head&

我想要的是,当我选择一顿饭时,他会告诉我这顿饭和正确的价格。现在他给我看食物,但当我选择其中一种食物时,出现了一个错误

错误: 对中的非对象调用成员函数fetch_assoc

当我在mwvp.php中时,此代码被删除。然后您会看到存储在数据库中的所有价格

您可以在下面看到原始代码中删除的代码

Change-fine.php

<?php
include ("connection.php");
?>
<!DOCTYPE html>
<html>
<head>
<title>Kantine</title>
<link rel="stylesheet" type="text/css" href="test.css">
<meta charset="utf-8">
<script src="js/jquery.min.js"></script>
   <script type="text/javascript">
        function getMeals(str) {
            $('#meal_data').text("");
            if (str == "select")
                return;
            $('#meal_data').load('mwvp.php?q='+str);
        }   
  </script>
</head>
<body>
<div id="container">
<div id="logo"></div>
<div id="header">
<h1>Change Meal</h1></div>
<div id="menu">
<a href="Addmeal.php"><img src="Addmeal.png"/></a>
</div>
<div id="content">
<?php
$result = mysqli_query($con,"SELECT meal, price FROM Meals ");
  echo '<select name="Meals"onchange="getMeals(this.value)"><option value="select">Choose Meal</option>';
while ($row = $result->fetch_assoc())  {
  echo "<option value=\""."\">" . $row['meal']."</option>\n";
  echo '<br />'; 
  }
  echo '</select>';
  echo '<ul id="meal_data">';
  echo '</ul>';

  mysqli_close($con);
?></div>
<div id="footer"></div></div>
</body>
</html>
原始mwvp.php

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<?php
$q = $_GET["q"];
include("connection.php");

$result = mysqli_query($con, "SELECT meal, price FROM meals WHERE meal = " .$q);

while  ($row = $result->fetch_assoc())  {
    echo '<input name="price" type="text" value="'.$row['price'].'" />';
   }
?>
</html>
删除了mwvp.php中的代码

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<?php
include("connection.php");

$result = mysqli_query($con, "SELECT meal, price FROM meals") 
while  ($row = $result->fetch_assoc())  {
    echo '<input name="price" type="text" value="'.$row['price'].'" />';
   }
?>
</html>

如果出现错误,mysqli_查询将返回FALSE。 您的SQL请求中似乎有错误。 尝试改变

$result = mysqli_query($con, "SELECT meal, price FROM meals WHERE meal = " .$q);


尝试更改回显的副本$行['MEIN']。\n;呼应$行['MEIN']。\n;如果我有一个没有空间的餐名,他会告诉我价格,但如果我有一个有空间的餐名,他不会告诉我任何东西。为了获得更好的体验,你应该稍微改变你的应用程序设计。您的用餐表中是否有id列?现在您应该通过id来解决您的用餐问题,即change echo$行['MEIN']。\n;呼应$行['MEIN']。\n;和$result=mysqli_query$con,选择膳食,其中膳食的价格='。mysqli_real_escape_字符串$con,$q';要获得$result=mysqli_query$con,请选择id、膳食、来自膳食的价格,其中膳食='。intval$q';和$result=mysqli_query$con,选择膳食、膳食价格;要想$result=mysqli\u查询$con,请选择id、膳食、膳食价格;
$result = mysqli_query($con, "SELECT meal, price FROM meals WHERE meal = '" . mysqli_real_escape_string($con, $q) . "'");