Php 一个While循环中有多个While循环?
总新手试图学习。。。谢谢你到目前为止的帮助 更新-下面更新了代码-谢谢Phill 我现在正试图从表Php 一个While循环中有多个While循环?,php,mysql,while-loop,Php,Mysql,While Loop,总新手试图学习。。。谢谢你到目前为止的帮助 更新-下面更新了代码-谢谢Phill 我现在正试图从表horses中获取相关的马信息,我可以通过horse\u name字段将其加入到race\u表单中。然后我想在while($racecard)信息下面显示比赛中每匹马的信息。这能让事情更清楚一点吗 我想我可以做另一个查询,然后在我已经拥有的mysql_fetch_数组下面进行一个while循环,这将显示它,然后进入下一场比赛,但这显然不起作用 我想知道你是否可以在一个while循环中依次运行两个wh
horses
中获取相关的马信息,我可以通过horse\u name字段将其加入到race\u表单中。然后我想在while($racecard)信息下面显示比赛中每匹马的信息。这能让事情更清楚一点吗
我想我可以做另一个查询,然后在我已经拥有的mysql_fetch_数组下面进行一个while循环,这将显示它,然后进入下一场比赛,但这显然不起作用
我想知道你是否可以在一个while循环中依次运行两个while循环?我正在编写一个赛马表单指南-我可以显示每一个比赛列表,但在下面我想显示比赛中每匹马的详细信息。无论如何,如果您查看此页面,您可以看到我正在尝试做什么:
问题是,任何时候我在比赛列表后放置第二个while循环,它都不会出现。我试图运行一个查询,从我的马表中获取马的详细信息,然后为比赛中的每匹马运行一段时间,但没有显示任何内容
我希望这足够清楚。。。下面是我的代码片段-如果我遗漏了一些重要内容,请告诉我:
echo”“;
$racedetails=mysql\u查询(“选择*
从种族信息
其中meetingID=(“$safemeetingID.”)号;
while($row=mysql\u fetch\u数组($racedetails))
{
在“$row['start\'U time']”和“$row['class']”之间的“$row['TRACE\'U number']”和“$row['distance']”之间的“$row['distance']”之间回音“Race”。”;
$racecard=mysql\u查询(“选择*
从种族形态
内部连接race\u form.raceID上的race\u信息=race\u info.raceID
其中race_form.raceID=(““$row['raceID']”.“)”);
while($row=mysql\u fetch\u数组($racecard))
{
回显“$row['number']”、$row['pass10']”、$row['horse_name']”;
}
回声“
”;
echo“
我希望我能在这里放一些马的形状…
”;
回声“;
}
回声“;
您可能需要更改某些$row
变量的名称,它们可能相互干扰
例如:
while($row_races = mysql_fetch_array($totalraces)){
while($row_details = mysql_fetch_array($racedetails)){
while($row_card = mysql_fetch_array($racecard)){
您可能需要更改某些$row
变量的名称,它们可能相互干扰
例如:
while($row_races = mysql_fetch_array($totalraces)){
while($row_details = mysql_fetch_array($racedetails)){
while($row_card = mysql_fetch_array($racecard)){
我理论上你可以,实际上你也可以,但是awhile
在a中,while
在a中,while
似乎有点过头了
我相信,如果你解释你想做什么,我们可以帮助你提高效率。我理论上你可以,实际上你可以,但是a中的while
而a中的while
对于a中的while
似乎有点过头了
我相信,如果你解释一下你想做什么,我们可以帮助你提高效率。我想你可以摆脱你的一个疑问:
第一个查询通过选择一个计数来获取比赛的数量,这将返回一条带有计数值的记录
// This returns one record with the count
$total_races = "SELECT COUNT(race_number) AS totalraces
FROM race_info WHERE meetingID = ('".$safemeetingID."') ";
接下来,您将遍历相同的记录,因为为竞赛详细信息返回的行与计数相同
// This looks to return the record(s) with the race details
$race_details = "SELECT * FROM race_info
WHERE meetingID = ('" . $safemeetingID . "')";
我认为您可以使用它来获得所需的结果:(我同意将$row变量重命名为每个while循环的描述性变量)
这个想法是将两个查询合并为一个,我知道这不是正确的语法,但它可能会让您了解如何进行
或者,您可以在循环查找马名的同时执行另一个查询
$racedetails = mysql_query("SELECT *
FROM race_info
WHERE meetingID = ('" . $safemeetingID . "')");
while($details_row = mysql_fetch_array($racedetails))
{
echo "<tr><td>Race " . $details_row['race_number'] . " at " . $details_row['start_time'] . " " . $details_row['class'] . " over " . $details_row['distance'] . "m</td></tr>";
$racecard = mysql_query("SELECT *
FROM race_form
INNER JOIN race_info ON race_form.raceID = race_info.raceID
WHERE race_form.raceID = ('" . $details_row['raceID'] . "')");
while($rc_row = mysql_fetch_array($racecard))
{
echo "<tr><td>" . $rc_row['number'] . "</td><td>" . $rc_row['past10'] . "</td><td>" . $rc_row['horse_name'] . "</td></tr>";
$horses = mysql_query("SELECT *
FROM horses
WHERE horse_name = ('" . $rc_row['horse_name'] . "')");
while($horse_row = mysql_fetch_array($horses))
{
// echo horse details here
}
}
echo "</table><br>";
echo "Testing<br>Testing<br>I wish I could put in some horse form here...<br>";
echo "<table width='990' border='1' cellspacing='2' cellpadding='2'>";
}
$racedetails=mysql\u查询(“选择*
从种族信息
其中meetingID=(“$safemeetingID.”)号;
而($details\u row=mysql\u fetch\u数组($racedetails))
{
回显“$details\u row['Race\u number']”在“$details\u row['start\u time']”上的“$details\u row['class']”在“$details\u row['distance']”上的“$details\u row['distance']”m”上的“Race.”;
$racecard=mysql\u查询(“选择*
从种族形态
内部连接race\u form.raceID上的race\u信息=race\u info.raceID
其中race_form.raceID=(“$details_row['raceID']);
而($rc\u row=mysql\u fetch\u数组($racecard))
{
回显“$rc_行['number']”、$rc_行['pass10']”、$rc_行['horse_name']”;
$horses=mysql\u查询(“选择*
来自马
其中horse_name=(“$rc_row['horse_name'.”)”);
while($horse\u row=mysql\u fetch\u数组($horses))
{
//回声马的细节在这里
}
}
回声“
”;
echo“Testing
Testing
我希望我能在这里放一些马的形状…
”;
回声“;
}
我认为您可以摆脱其中一个查询:
第一个查询通过选择一个计数来获取比赛的数量,这将返回一条带有计数值的记录
// This returns one record with the count
$total_races = "SELECT COUNT(race_number) AS totalraces
FROM race_info WHERE meetingID = ('".$safemeetingID."') ";
接下来,您将遍历相同的记录,因为为竞赛详细信息返回的行与计数相同
// This looks to return the record(s) with the race details
$race_details = "SELECT * FROM race_info
WHERE meetingID = ('" . $safemeetingID . "')";
我认为您可以使用它来获得所需的结果:(我同意将$row变量重命名为每个while循环的描述性变量)
这个想法是将两个查询合并为一个,我知道这不是正确的语法,但它可能会让您了解如何进行
或者,您可以在循环查找马名的同时执行另一个查询
$racedetails = mysql_query("SELECT *
FROM race_info
WHERE meetingID = ('" . $safemeetingID . "')");
while($details_row = mysql_fetch_array($racedetails))
{
echo "<tr><td>Race " . $details_row['race_number'] . " at " . $details_row['start_time'] . " " . $details_row['class'] . " over " . $details_row['distance'] . "m</td></tr>";
$racecard = mysql_query("SELECT *
FROM race_form
INNER JOIN race_info ON race_form.raceID = race_info.raceID
WHERE race_form.raceID = ('" . $details_row['raceID'] . "')");
while($rc_row = mysql_fetch_array($racecard))
{
echo "<tr><td>" . $rc_row['number'] . "</td><td>" . $rc_row['past10'] . "</td><td>" . $rc_row['horse_name'] . "</td></tr>";
$horses = mysql_query("SELECT *
FROM horses
WHERE horse_name = ('" . $rc_row['horse_name'] . "')");
while($horse_row = mysql_fetch_array($horses))
{
// echo horse details here
}
}
echo "</table><br>";
echo "Testing<br>Testing<br>I wish I could put in some horse form here...<br>";
echo "<table width='990' border='1' cellspacing='2' cellpadding='2'>";
}
$racedetails=mysql\u查询(“选择*
从种族信息
其中meetingID=(“$safemeetingID.”)号;
而($details\u row=mysql\u fetch\u数组($racedetails))
{
回显“$details\u row['Race\u number']”在“$details\u row['start\u time']”上的“$details\u row['class']”在“$details\u row['distance']”上的“$details\u row['distance']”m”上的“Race.”;
$racecard=mysql\u查询(“选择*
从种族形态
内部连接race\u form.raceID上的race\u信息=race\u info.raceID
其中race_form.raceID=(“$details_row['raceID']);
而($rc\u row=mysql\u fetch\u数组($racecard))
{
回音“$rc_行['number']”、$rc_行['past10']”、$rc_行['horse']”_