ดึงข้อมูลจาก 2 ตารางมาโชว์ในตารางเดียว
โพสต์แล้ว: 04/02/2009 1:49 am
เราสร้างฟอร์มรับค่าข้อมูลมาเก็บไว้ในตารางแรกแล้วค่ะ
ซึ่งฟอร์มนี้เชื่อมโยงกับตารางที่สอง
ต้องการแสดงข้อมูลโดยดึงข้อมูลบางคอลัมภ์จากตารางแรกและจากตารางที่สอง
มาแสดงในอีกหน้าเพจนึง ดังรูปน่ะค่ะ
ตารางที่1(สีแดงคือส่วนที่ต้องการนำมาแสดง)
คือเราต้องการเรียกข้อมูลในส่วนของ ภาคการศึกษา,ชั้นปีการศึกษา,รหัสวิชา จากตารางแรก
ส่วนตารางที่สองต้องการข้อมูลชื่อวิชาภาษาไทยและจำนวนหน่วยกิต
ตารางที่2 (สีแดงคือส่วนที่ต้องการนำมาแสดง)
หน้าเพจจากโค้ดที่เขียนไว้ (สีแดงคือส่วนที่ต้องการแสดงใน1หน้า)
โค้ดที่เขียนไว้เป็นประมาณนี้อ่ะค่ะ อยากทราบว่าต้องปรับแก้ตรงไหน ยังไงอ่ะค่ะ
<?
$host="localhost";
$user="root";
$pwd="1234";
$link=mysql_connect($host,$user,$pwd);
if(!$link){
echo"ไม่สามารถติดต่อฐานข้อมูลได้";
exit();
}
mysql_query("use data_plan;");
$sql="select subject.Subject_unit,subject.Theory_unit,subject.Lab_unit,subject.Outroom_unit,subject.Subject_id,subject.Subject_Thai_name,study_plan.Subject_id
from subject,study_plan where subject.Subject_id=study_plan.Subject_id";
$result=mysql_query($sql,$link);
$rows=mysql_num_rows($result);
?>
<table border="0" align="center">
<tr>
<td><div align="center">ปีการศึกษาที่ 1 </div></td>
</tr>
<tr>
<td valign="top">ภาคการศึกษาที่ 1 </td>
</tr>
<tr>
<td width="149" valign="top"> </td>
<td width="209" valign="top"> </td>
<td width="120" valign="top"> </td>
</tr>
<?php
for($i=0;$i<$rows;$i++){
echo"<tr><td></td></tr>";
echo"<tr><td></td></tr>";
echo"<tr>";
echo"<td>".mysql_result($result,$i,"study_plan.Subject_id")."</td>";
echo"<td>".mysql_result($result,$i,"subject.Subject_Thai_name")."</td>"; echo"<td>".mysql_result($result,$i,"subject.Subject_unit").mysql_result($result,$i,"subject.Theory_unit").
mysql_result($result,$i,"subject.Lab_unit").mysql_result($result,$i,"subject.Outroom_unit")."</td>";
echo"</tr>";
}
?>
</table>
<?php
mysql_close($link);
?>
ซึ่งฟอร์มนี้เชื่อมโยงกับตารางที่สอง
ต้องการแสดงข้อมูลโดยดึงข้อมูลบางคอลัมภ์จากตารางแรกและจากตารางที่สอง
มาแสดงในอีกหน้าเพจนึง ดังรูปน่ะค่ะ
ตารางที่1(สีแดงคือส่วนที่ต้องการนำมาแสดง)
คือเราต้องการเรียกข้อมูลในส่วนของ ภาคการศึกษา,ชั้นปีการศึกษา,รหัสวิชา จากตารางแรก
ส่วนตารางที่สองต้องการข้อมูลชื่อวิชาภาษาไทยและจำนวนหน่วยกิต
ตารางที่2 (สีแดงคือส่วนที่ต้องการนำมาแสดง)
หน้าเพจจากโค้ดที่เขียนไว้ (สีแดงคือส่วนที่ต้องการแสดงใน1หน้า)
โค้ดที่เขียนไว้เป็นประมาณนี้อ่ะค่ะ อยากทราบว่าต้องปรับแก้ตรงไหน ยังไงอ่ะค่ะ
<?
$host="localhost";
$user="root";
$pwd="1234";
$link=mysql_connect($host,$user,$pwd);
if(!$link){
echo"ไม่สามารถติดต่อฐานข้อมูลได้";
exit();
}
mysql_query("use data_plan;");
$sql="select subject.Subject_unit,subject.Theory_unit,subject.Lab_unit,subject.Outroom_unit,subject.Subject_id,subject.Subject_Thai_name,study_plan.Subject_id
from subject,study_plan where subject.Subject_id=study_plan.Subject_id";
$result=mysql_query($sql,$link);
$rows=mysql_num_rows($result);
?>
<table border="0" align="center">
<tr>
<td><div align="center">ปีการศึกษาที่ 1 </div></td>
</tr>
<tr>
<td valign="top">ภาคการศึกษาที่ 1 </td>
</tr>
<tr>
<td width="149" valign="top"> </td>
<td width="209" valign="top"> </td>
<td width="120" valign="top"> </td>
</tr>
<?php
for($i=0;$i<$rows;$i++){
echo"<tr><td></td></tr>";
echo"<tr><td></td></tr>";
echo"<tr>";
echo"<td>".mysql_result($result,$i,"study_plan.Subject_id")."</td>";
echo"<td>".mysql_result($result,$i,"subject.Subject_Thai_name")."</td>"; echo"<td>".mysql_result($result,$i,"subject.Subject_unit").mysql_result($result,$i,"subject.Theory_unit").
mysql_result($result,$i,"subject.Lab_unit").mysql_result($result,$i,"subject.Outroom_unit")."</td>";
echo"</tr>";
}
?>
</table>
<?php
mysql_close($link);
?>