所以基本上,我尝试创建一个小东西,它输出星星,基于数据库保存的评级整数。问题是它似乎没有将数据库中的数字i放入变量中。以下是我使用的代码:
<?php
$productID = 100;
$con = mysqli_connect("localhost", "root", "", "example");
function connect()
{
$con = mysqli_connect("localhost", "root", "", "example");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
} else {
return $con;
}
}
function getStars($con)
{
$productID = 100;
$sql = "SELECT rating
FROM reviews
-- JOIN stockitemstockgroups USING (StockItemID)
-- JOIN stockgroups USING (StockGroupID)
WHERE reviewID = '5'
";
$result = $con->query($sql);
if ($con && ($result->num_rows > 0)) {
// output data of each row
while ($row = $result->fetch_assoc()) {
echo $row["rating"];
}
} else {
echo "error";
}
}
$value = getStars($con);
echo $value;
for ($x = 1; $x <= $value; $x++) {
echo '<div class="rating"><span>★</span></div>';
}
?>
1条答案
按热度按时间r3i60tvu1#
我很难找到一个复制品,虽然我肯定这是一个。你没有从你的函数中返回任何东西,所以
$value
没有价值。一般来说,从来没有
echo
从一个函数。而且,不需要对可能是单个结果的内容进行循环。