gpt4 book ai didi

php - 在 PHP 中的一个循环中从不同的行中多次获取

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

抱歉我的英语不好。

这是我在数据库中的表。

 course - lecturer - time
CSS --- John --- 8:00 AM, 2016/01/21, Sunday
CSS --- John --- 10:00 AM, 2016/01/23, Tuesday
CSS --- John --- 1:00 PM, 2016/01/25, Thursday
HTML --- Ben --- 10:00 AM, 2016/01/22, Monday
HTML --- Ben --- 8:00 AM, 2016/01/23, Tuesday

如您所见,Courses 和 Lecturers 是重复的,但不同行的时间不同。每次我尝试从数据库中获取并查看到 html 页面时,它都会为每一行创建一个表,这是愚蠢且不专业的。

我希望输出是这样的:

    <table border=2>
<tr>
<td> course name : </td> <td colspan=3> css </td>
</tr>
<tr>
<td> lecturer : </td> <td colspan=3> John </td>
</tr>
<tr>
<td> time : </td> <td> 8:00 AM, 2016/01/21, Sunday </td> <td> 10:00 AM, 2016/01/23, Tuesday </td> <td> 1:00 PM, 2016/01/25, Thursday </td>
</tr>
</table>

我试过了,但我发现我的 PHP 不够好。

这是我原来的 PHP 代码...

$qry="SELECT * FROM courses";
$results=mysql_query($qry);
if($results)
{
if(mysql_num_rows($results) > 0)
{
while ($rows = mysql_fetch_array($results))
{
echo "<center><table width=400 border=1>
<tr><td><b> Course Name : </b></td><td>". $rows["course"]."</td></tr>
<tr><td><b> Lecturer Name : </b></td><td>". $rows["lecturer"]."</td></tr>
<tr><td><b> Time : </b></td><td>". $rows["time"]."</td></tr>
</center></table><br>";
}
}
else {echo "<center>not available</center>";}
}

抱歉打扰了

最佳答案

你必须更换:

$qry="SELECT * FROM courses";
$results=mysql_query($qry);
if($results)
{
if(mysql_num_rows($results) > 0)
{
while ($rows = mysql_fetch_array($results))
{
echo "<center><table width=400 border=1>
<tr><td><b> Course Name : </b></td><td>". $rows["course"]."</td></tr>
<tr><td><b> Lecturer Name : </b></td><td>". $rows["lecturer"]."</td></tr>
<tr><td><b> Time : </b></td><td>". $rows["time"]."</td></tr>
</center></table><br>";
}
}
else {echo "<center>not available</center>";}
}

$qry="SELECT distinct course as c, (SELECT lecturer from courses where course=c limit 1) as l FROM courses";
$results=mysql_query($qry);
if($results)
{
if(mysql_num_rows($results) > 0)
{
while ($rows = mysql_fetch_array($results))
{
echo "<center><table width=400 border=1>";
echo "<tr><td><b> Course Name : </b></td><td>". $rows["c"]."</td></tr>
<tr><td><b> Lecturer Name : </b></td><td>". $rows["l"]."</td></tr>
<tr><td><b> Time : </b></td>"

$qry2="SELECT time FROM courses WHERE courses.course='".$rows['c']."' and courses.lecturer='".$rows['l']."'";
$results2=mysql_query($qry2);
if($results2)
{
while($rows2 = mysql_fetch_array($results2))
{
echo"<td>".$rows2['time']."</td>";
}
}
echo"</tr>";
}
echo "</center></table><br>"
}
else {echo "<center>not available</center>";}
}

这应该做到了。您必须在循环外定义表格,这就是为什么您必须为每一行分隔表格。

希望对您有所帮助。

关于php - 在 PHP 中的一个循环中从不同的行中多次获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33163945/

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