すべての旅程が保存されているテーブルの旅程があります。次に、値に応じて、旅程テーブル内のすべてのデータをチェックボックスの配列にフェッチしてい$_SESSION
ます。
<?php
session_start();
require("aacfs.php");
echo"<div class='box' style='display:inline-block;' >
<table width='800'><tr><td>
<table width=100 align=left class='hovertable' style='display:inline-block;'><tr><th align=center bgcolor=silver><font face=consolas>Choose Itinerary</font></th></tr>
<tr>
<td></br>
<form method=post>";
$result=mysql_query("select * from itinerary where aircraft = '$_SESSION[rtyp]' group by location");
$y=mysql_affected_rows();
for($i=0;$i<$y;$i++)
{$row=mysql_fetch_array($result);
$pr=$row['icode'];
$n=$row['location'];
$l=$row['btime'];
echo"<table border=1 align=center width=250>
<tr><td width=15>
<input type='checkbox' value='$n -> $l'>
</td><td>$n</td><td width=5>$l</td></tr>
</table>";
}
?>
そして、以前に選択した旅程が保存されている別のテーブルがあります。それをロケーションテーブルと呼びましょう。そこにあるすべてのデータを選択したいので、フェッチした前のクエリで見つけます。見つかった場合、そのチェックボックスは自動的にチェックされます。
たとえば、旅程表からこれらのデータがあります。
次に、ロケーション テーブルからこれらのデータを取得します。
ロケーション テーブルの値をチェックする必要があります。チェックボックスの配列の値Cebu - Bohol
と値をチェックする必要があることを意味します。クエリを使用してそれを行う方法がわかりません。私を助けてください。ありがとう。Bohol - Cebu
編集:このコードを使用して、やりたいことを実行できます。
$result=mysql_query("select * from itinerary where aircraft = '$_SESSION[rtyp]' group by location");
while($row=mysql_fetch_array($result))
{
$pr=$row['icode'];
$n=$row['location'];
$l=$row['btime'];
$res=mysql_query("select * from location where reservno = '$_SESSION[rno]'") or die(mysql_error());
while($row1=mysql_fetch_array($res))
{
$loc=$row1['location'];
if($n==$loc)
{
echo"<table border=1 align=center width=250>
<tr><td width=15>
<input type='checkbox' value='$n -> $l' checked='yes'>
</td><td>$n</td><td width=5>$l</td></tr>
</table>";
$t=$_POST['prod'];
}
elseif($n!=$loc)
{
echo"<table border=1 align=center width=250>
<tr><td width=15>
<input type='checkbox' value='$n -> $l'>
</td><td>$n</td><td width=5>$l</td></tr>
</table>";
$t=$_POST['prod'];
}
}
}
しかし、
ご覧のとおり、旅程を 2 回エコーします。旅程を一度だけエコーするにはどうすればよいですか? ありがとう!