gpt4 book ai didi

php - MySQL 从数据库检索不检索多行

转载 作者:行者123 更新时间:2023-11-29 13:50:50 27 4
gpt4 key购买 nike

我正在尝试使用LIKE查询从用户输入中检索所有数据并将其与数据库进行匹配,它可以工作,但只返回一条记录,但我在表中有很多记录。

它返回它能找到的最接近的记录,

举例来说,我有 2 条记录,其 ItemDesc 字段包含字符“The”,当我在输入框中搜索“The”并单击“提交”时,它会在应该返回时返回最接近(最早创建的)记录两者皆有。

<?php
$username = "a3355896_guy";
$password = "++++++";
$hostname = "mysql5.000webhost.com";
$dbh = mysql_connect($hostname, $username, $password) or die("Unable to connect to MySQL");

mysql_select_db("a3355896_book") or die("Unable to connect to database");

$ItemDesc = $_POST['ItemDesc'];
$query = "select * from StockItems where ItemDesc LIKE '%$ItemDesc%'";
$result=mysql_query($query);
$num=mysql_num_rows($result);
mysql_close();
?>

抱歉,本应包括检索:

<?php
if ($num>0)
{
echo "<center><table border=1><tr><th>Item Code</th><th>Item Desc</th>";
echo "<th>Item Stock Qty</th>";
echo "<th>Item Unit Price</th><th>Item Category</th></tr>";
$ItemCode = mysql_result($result,$i,"ItemCode");
$ItemDesc = mysql_result($result,$i,"ItemDesc");
$ItemStockQty = mysql_result($result,$i,"ItemStockQty");
$ItemUnitPrice = mysql_result($result,$i,"ItemUnitPrice");
$ItemCategory = mysql_result($result,$i,"ItemCategory");
echo "<tr><td>$ItemCode</td><td>$ItemDesc</td><td align=right>";
echo "$ItemStockQty</td>";
echo "<td align=right>$ItemUnitPrice</td>";
echo "<td>$ItemCategory</td></tr>";
echo "</table></center>";

}
else
{
echo "<form name='DeleteStock2'>";
echo "<p> Sorry, $ItemDesc does not exist!<p>";
echo "<input type='button' value='Leave' onclick='history.go(-1)'>";
}

?>

最佳答案

您实际上并未在此处访问数据 - 您需要迭代结果集。

$setLength = mysql_num_rows($result);
for($i = 0; $i < $setLength; $i++){
//Here, mysql_fetch_assoc automatically grabs the next result row on each iteration
$row = mysql_fetch_assoc($result);
//do stuff with "row"
}

除非您正在这样做,并且您只是选择不将其包含在您的代码片段中。让我们知道:)

--编辑--首先,我很抱歉 - 出于旧习惯,我建议您使用 mysql_fetch_assoc 而不是 mysqli 函数集。

尝试使用 fetch_assoc 或 fetch_array 函数,它可以解决您的问题。我从未使用过你使用的方法,我认为它已经被弃用了一段时间了。在这里查看: http://php.net/manual/en/mysqli-result.fetch-assoc.php

关于php - MySQL 从数据库检索不检索多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16700554/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com