0

詳細と呼ばれるデータベースに2つのテーブルがあり、両方のテーブルにono(注文番号)と呼ばれる共通のフィールドがあると報告します。特定の注文番号の両方のテーブルからデータを取得し、PHPを使用してテーブルに表示する必要があります。1 つのテーブルのデータのみを表示できます。

コード:

<?php
mysql_connect ("localhost", "root","")  or die (mysql_error());
mysql_select_db ("name");
$term = $_POST['term'];
$sql = mysql_query("select * from details where details.ono='$term'");
while ($row = mysql_fetch_array($sql)){
echo "<fieldset>";
echo "<table width='1400' cellpadding='5' cellspacing='5' border='0'>";
echo "<tr><td>Patient Name: ".$row['details.pname']."</td><td>Order NO:         ".$row['report.labid']."</td></tr>";
echo "<tr><td>Ph no: ".$row['phno']."</td><td>Age: ".$row['age']."</td></tr>";
echo "<tr><td>Ref doc: ".$row['rdoc']."</td><td>Received on: ".$row['Sdate']."</td></tr>";
echo "</table>";
echo "</fieldset>";
}
?>
4

3 に答える 3

0

mysql を使用して 2 つのテーブルの情報を結合する場合は、 joinを使用する必要があります。

あなたの場合、これは次のようになります。

$sql = mysql_query("SELECT * from details AS detail LEFT JOIN 
report AS report ON (detail.ono = report.ono) where detail.ono='$term'");

必ず sth を使用してください。mysqli::escape_stringのよう に、SQL インジェクション攻撃から保護されていることを確認してください。

于 2013-06-17T13:58:28.240 に答える