我正在使用 PHP 和 MySQL 数据库管理进行练习,并且尝试使用 PHP 从表中的字段返回金额。我试图从 food 表中的 CalsPerServ 获取值,其中foodID 等于用户选择的foodID。我现在得到的只是一个数组,而我应该返回一个结果。知道出了什么问题吗?
if($tableName == "meals"){
$foodsID = filter_input(INPUT_POST, "foodsID");
$servings = filter_input(INPUT_POST, "Servings");
$foodsID = mysql_real_escape_string($foodsID);
$servings = mysql_real_escape_string($servings);
$query = "SELECT CalsPerServ FROM foods WHERE foodsID=$foodsID";
$result = mysql_query($query, $connect);
$CalsPerServ = mysql_fetch_assoc($result);
print $CalsPerServ;
$calories = ($CalsPerServ * $servings) * 100;
$sql .= "(foodsID, Servings, Calories) VALUES ('$foodsID', '$servings', '$calories')";
$sqltwo = "INSERT INTO daily_diary (foodsID, CaloriesPlus) VALUES ('$foodsID', '$calories')";
$resulttwo = mysql_query($sqltwo, $connect);
}
最佳答案
问题出在这一行
$calories = ($CalsPerServ * $servings) * 100;
$CalsPerServ
是一个包含查询结果的数组。为了从中获取单列值,您必须像这样使用它
$calories = ($CalsPerServ['CalsPerServ'] * $servings) * 100;
关于php - MySQL 和 PHP 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17158129/