$date" ?> $cname" ?> 我的问题是, 我每行只得到一个结果,但我在数据库中的数据是 5。 这-6ren">
gpt4 book ai didi

php - mysql_fetch 无法收集数据库中的所有数据

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

我这里有一个代码,用于从数据库中选择所有数据,这是我的代码:

<?php

$name = $_POST['cname'];

if ($_POST["Search"] == "Search") {
$query = mysql_query("SELECT * FROM parts WHERE cname LIKE '%$name%'");
if (!empty($query)) {
$vsi = 'No Data';
$date = 'No Data';
$cname = 'No Data';
}

while ($row = @mysql_fetch_array($query)) {
$vsi = $row["vsi"];
$date = $row["date"];
$cname = $row["cname"];
}

这是我如何回显所有变量,

<tr class="gradeC">
<?php echo "<td width='10%'><font size='-2'> $vsi </font></td>" ?>
<?php echo "<td width='20%'><font size='-2'>$date</font></td>" ?>
<?php echo "<td width='20%'><font size='-2'> $cname</font></td>" ?>
</tr>

我的问题是,

我每行只得到一个结果,但我在数据库中的数据是 5。

这是我的结果

vsi      date             name
123 12/12/2012 test1

但正确的结果应该是:

vsi      date             name
123 12/12/2012 test1
123 12/12/2012 test1
123 12/12/2012 test1
123 12/12/2012 test1
123 12/12/2012 test1

注意,

我让数据库中的所有数据都一样

最佳答案

你必须在 while 循环中使用 TR。

<?php

$name = $_POST['cname'];

if ($_POST["Search"] == "Search") {
$query = mysql_query("SELECT * FROM parts WHERE cname LIKE '%$name%'");
if (!empty($query)) {
$vsi = 'No Data';
$date = 'No Data';
$cname = 'No Data';
}

while ($row = @mysql_fetch_array($query)) {
$vsi = $row["vsi"];
$date = $row["date"];
$cname = $row["cname"];

?>
<tr class="gradeC">
<?php echo "<td width='10%'><font size='-2'> $vsi </font></td>" ?>
<?php echo "<td width='20%'><font size='-2'>$date</font></td>" ?>
<?php echo "<td width='20%'><font size='-2'> $cname</font></td>" ?>
</tr>
<?
}

?>

警告

您的代码容易受到 sql injection 的攻击您需要转义所有 getpost 更好的方法是使用 Prepared statement

好读

  1. How to prevent SQL injection in PHP?
  2. Are PDO prepared statements sufficient to prevent SQL injection?

注意事项

  1. 整个 ext/mysql PHP 扩展,提供所有以前缀 mysql_ 命名的函数,是 officially deprecated as of PHP v5.5.0并将在未来被删除。所以使用 PDOMySQLi

好读

  1. The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead
  2. PDO Tutorial for MySQL Developers
  3. Pdo Tutorial For Beginners

希望对您有所帮助。

关于php - mysql_fetch 无法收集数据库中的所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14392958/

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