gpt4 book ai didi

php - 在自动生成的列和行中加载 mysql 数据

转载 作者:行者123 更新时间:2023-11-29 23:40:52 25 4
gpt4 key购买 nike

因此,我们的想法是创建一个网上商店,在本例中,T 恤信息将加载到不同的列和行中。我希望行由 4 列组成。

我正在使用 PDO 方法从 mysql 请求数据(是的..我使用了 pdo 的全局变量,已经研究过了。)我正在使用 Bootstrap 创建行和列。

到目前为止,我已经能够创建一个代码来加载数据并将其存储到列中。但我的知识似乎真的到这里就结束了。我希望有人能告诉我一种方法,

它加载 4 件 T 恤的数据,并将其存储在这些列中然后加载接下来 4 件 T 恤的数据,并将其放入同样包含 4 列的新行中。

到目前为止我的代码:

PDO加载数据

<?php
global $pdo;
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // throw all errors.
try
{
$stmt = $pdo->prepare("SELECT * FROM products"); // form the sql statement.
$results = array(); // initialise an array for the results.
if ($stmt->execute()) { // execute the call to the db.
while ($row = $stmt->fetch(PDO::FETCH_ASSOC))
{ // loop through the resultset.
$results[] = $row; // load each row into the array.
}
}
} catch (PDOException $e)
{
echo $e->getMessage(); // print any errors.
}

?>

将其放入列和行中:

foreach ($results as $result) 
{ // loop through the resultset and print each row.
echo "<div class=\"row\">\n";
echo "<div class=\"col-xs-3\" style=\"background-color:lavender;\">\n";
echo "<a href=\"article.php?id=".$result['ID']."\">".$result['productname']."</a>\n";
echo "</div>\n";
echo "</div>\n";
}
?>

最佳答案

您始终可以跳过这些行:

foreach ($results as $result) { 
echo "<div class=\"col-xs-3\" style=\"background-color:lavender;\">\n";
echo "<a href=\"article.php?id=".$result['ID']."\">".$result['productname']."</a>\n";
echo "</div>\n";
}
?>

这样,它总是打印出 4 列,并且当无法容纳更多列时会自动溢出到下一行。或者,使用计数器来确定何时回显一行:

$item = 1;
echo "<div class=\"row\">\n";
foreach ($results as $result) {
echo "<div class=\"col-xs-3\" style=\"background-color:lavender;\">\n";
echo "<a href=\"article.php?id=".$result['ID']."\">".$result['productname']."</a>\n";
echo "</div>\n";
if($item % 4 == 1) { // i.e. Count is divisible by 4
echo "</div><div class=\"row\">\n";
}
$item++;
}
?>

请注意,第一行是在循环外部声明的,每次我们命中 4 个项目时,我们都会完成第一行并声明一个新行。我的逻辑可能有点偏差,但你大概明白了。还要研究分页,有一种方法可以只返回一定数量的结果,但这不是我个人必须处理的事情。

祝你好运!

关于php - 在自动生成的列和行中加载 mysql 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26166093/

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