PHP从表中收集所有行
如何使这个php脚本在表中重复一定数量的行?我有点不知道如何开始,再次感谢PHP从表中收集所有行,php,html,Php,Html,如何使这个php脚本在表中重复一定数量的行?我有点不知道如何开始,再次感谢 <?php $con = mysqli_connect("localhost", "root", "xxx", "xxx"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error();
<?php
$con = mysqli_connect("localhost", "root", "xxx", "xxx");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con, "SELECT * FROM caseStudies");
$row = mysqli_fetch_array($result);
for ($i = 0; $i < 1; $i++)
{
echo "<div class='case' id='case$i'>";
echo "<div class='row'>";
echo "<div class='header'>";
echo '<h4>' . $row['caseName'] . '</h4>';
echo "</div>";
echo "</div>";
echo "<div class='row'>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "</div>";
$i++;
}
}
您可以使用while
或foreach
<?php
$con=mysqli_connect("localhost","root","xxx","xxx");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM caseStudies");
$i=1;
while($row = mysqli_fetch_array($result))
{
echo "<div class='case' id='case$i'>";
echo "<div class='row'>";
echo "<div class='header'>";
echo '<h4>' . $row['caseName'] . '</h4>';
echo "</div>";
echo "</div>";
echo "<div class='row'>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "</div>";
$i++;
}
?>
您可以使用while
或foreach
<?php
$con=mysqli_connect("localhost","root","xxx","xxx");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM caseStudies");
$i=1;
while($row = mysqli_fetch_array($result))
{
echo "<div class='case' id='case$i'>";
echo "<div class='row'>";
echo "<div class='header'>";
echo '<h4>' . $row['caseName'] . '</h4>';
echo "</div>";
echo "</div>";
echo "<div class='row'>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "</div>";
$i++;
}
?>
forloop中的条件不正确。使用:
$i = 0;
while ($row = mysqli_fetch_assoc($result)) {
echo ...
$i++; //if you need $i
}
相反,forloop中的条件不正确。使用:
$i = 0;
while ($row = mysqli_fetch_assoc($result)) {
echo ...
$i++; //if you need $i
}
$countRes = mysqli_num_rows($result);
for($i=0; $i<$countRes; $i++){ ... }
相反,$countRes=mysqli\u num\u行($result);
$countRes = mysqli_num_rows($result);
for($i=0; $i<$countRes; $i++){ ... }
对于($i=0;$i$countRes=mysqli\u num\u行($result);
对于($i=0;$i在本例中,您应该使用WHILE循环,如下所示:
$con=mysqli_connect("localhost","root","xxx","xxx");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM caseStudies");
$i=0;
while($row = mysqli_fetch_array($result)){
echo "<div class='case' id='case$i++'>";
echo "<div class='row'>";
echo "<div class='header'>";
echo '<h4>' . $row['caseName'] . '</h4>';
echo "</div>";
echo "</div>";
echo "<div class='row'>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "</div>";
}
$con=mysqli_connect(“localhost”、“root”、“xxx”、“xxx”);
//检查连接
if(mysqli\u connect\u errno()){
echo“未能连接到MySQL:”.mysqli_connect_error();
}
$result=mysqli_查询($con,“从案例研究中选择*);
$i=0;
while($row=mysqli\u fetch\u数组($result)){
回声“;
回声“;
回声“;
回显'.$row['caseName'].';
回声“;
回声“;
回声“;
回声“;
回声';
回声“;
回声“;
回声';
回声“;
回声“;
回声';
回声“;
回声“;
}
如果您确实想要/需要,可以使用for循环,方法是将for循环比较部分中的1替换为mysqli_num_rows()函数,如下所示:
for($i=0;$i<mysqli_num_rows($result);$i++)
对于($i=0;$i在本例中,您应该使用WHILE循环,如下所示:
$con=mysqli_connect("localhost","root","xxx","xxx");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM caseStudies");
$i=0;
while($row = mysqli_fetch_array($result)){
echo "<div class='case' id='case$i++'>";
echo "<div class='row'>";
echo "<div class='header'>";
echo '<h4>' . $row['caseName'] . '</h4>';
echo "</div>";
echo "</div>";
echo "<div class='row'>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "</div>";
}
$con=mysqli_connect(“localhost”、“root”、“xxx”、“xxx”);
//检查连接
if(mysqli\u connect\u errno()){
echo“未能连接到MySQL:”.mysqli_connect_error();
}
$result=mysqli_查询($con,“从案例研究中选择*);
$i=0;
while($row=mysqli\u fetch\u数组($result)){
回声“;
回声“;
回声“;
回显'.$row['caseName'].';
回声“;
回声“;
回声“;
回声“;
回声';
回声“;
回声“;
回声';
回声“;
回声“;
回声';
回声“;
回声“;
}
如果您确实想要/需要,可以使用for循环,方法是将for循环比较部分中的1替换为mysqli_num_rows()函数,如下所示:
for($i=0;$i<mysqli_num_rows($result);$i++)
对于($i=0;$i使用:而($row=mysqli\u fetch\u数组($result))
而不是:($i=0;$i<1;$i++)
使用:而($row=mysqli\u fetch\u array($result))
而不是:对于($i=0;$i<1;$i++)
您可以使用和
试试这个:-
$result = mysqli_query($con,"SELECT * FROM caseStudies");
$ispresent = @mysqli_num_rows($result);
$i = 0;
if($ispresent > 0) // if row present then only run your while loop
{
while($row = mysqli_fetch_assoc($result))
{
echo "<div class='case' id='case$i'>";
echo "<div class='row'>";
echo "<div class='header'>";
echo '<h4>' . $row['caseName'] . '</h4>';
echo "</div>";
echo "</div>";
echo "<div class='row'>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "</div>";
$i++;
}
}
$result=mysqli_query($con,“从案例研究中选择*);
$ispresent=@mysqli\u num\u行($result);
$i=0;
if($ispresent>0)//如果行存在,则只运行while循环
{
while($row=mysqli\u fetch\u assoc($result))
{
回声“;
回声“;
回声“;
回显'.$row['caseName'].';
回声“;
回声“;
回声“;
回声“;
回声';
回声“;
回声“;
回声';
回声“;
回声“;
回声';
回声“;
回声“;
$i++;
}
}
您可以使用和
试试这个:-
$result = mysqli_query($con,"SELECT * FROM caseStudies");
$ispresent = @mysqli_num_rows($result);
$i = 0;
if($ispresent > 0) // if row present then only run your while loop
{
while($row = mysqli_fetch_assoc($result))
{
echo "<div class='case' id='case$i'>";
echo "<div class='row'>";
echo "<div class='header'>";
echo '<h4>' . $row['caseName'] . '</h4>';
echo "</div>";
echo "</div>";
echo "<div class='row'>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "<div class='caseimg'>";
echo '<img src="' . $row['caseImage'] . '" class="Responsive image"/>';
echo "</div>";
echo "</div>";
$i++;
}
}
$result=mysqli_query($con,“从案例研究中选择*);
$ispresent=@mysqli\u num\u行($result);
$i=0;
if($ispresent>0)//如果行存在,则只运行while循环
{
while($row=mysqli\u fetch\u assoc($result))
{
回声“;
回声“;
回声“;
回显'.$row['caseName'].';
回声“;
回声“;
回声“;
回声“;
回声';
回声“;
回声“;
回声';
回声“;
回声“;
回声';
回声“;
回声“;
$i++;
}
}
您可以在使用的同时
循环,就像其他人说的那样,对每行执行此操作
(虽然将自动停止并显示最后一行,但您不需要知道所拥有的行数)
如果您只想做两次,请保留您的代码,但是:您缺少一个代码
编辑:看来您的编辑已经纠正了缺少的
您可以使用,而循环,就像其他人说的那样对每行执行此操作
(虽然将自动停止并显示最后一行,但您不需要知道所拥有的行数)
如果您只想做两次,请保留您的代码,但是:您缺少一个代码
编辑:您的编辑似乎已更正了缺少的
而不是:$row=mysqli\u fetch\u数组($result);for($i=0;$i<1;$i++){
使用而($row=mysqli\u fetch\u assoc($query)){}
然后是您的代码。只要有行,这将运行,而不是:$row=mysqli\u fetch\u数组($result);for($i=0;$i<1;$i++){
使用而($row=mysqli\u fetch\u assoc($query)){
然后是您的代码。只要有行,这将运行。如果结果集为0,则if条件是冗余的,因为while循环块将永远不会执行。@halabuda仔细查看OP问题
,OP使用$i值作为id,因此我使用$i变量,这是检查数据是否存在的最佳实践。如果正确阅读问题您可能不会这样评论。@halabuda阅读我编辑的评论-检查数据是否存在是最佳做法。如果数据不存在,OP可以在else Condition中打印结果未找到
,谢谢您的回复,因为它正是您想要的