Tue 3 Oct 2006 10:03:36
สวัสดีครับ
มีข้อสงสัย ขอคำแนะนำดังนี้ครับ
1. ผมเขียน programme ดังนี้ครับ
<?
$link=mysql_connect("localhost","root","");
if(!$link)
{
echo"Error";
}
else
{
mysql_select_db("company",$link);
$link=mysql_connect("localhost","root","");
if (!$link)
{
echo"Error";
}
else
{
mysql_select_db("company",$link);
$sql = "SELECT company, country, email1 FROM company WHERE agri=1 order by company asc";
$res=mysql_query($sql,$link);
echo"<table border=1 cellpadding=3 cellspacing=0>";
echo"<tr><td><font color='#8B0000' face='verdana' size='1'><center><b>Company</b></center></font></td>";
echo"<td><font color='#8B0000' face='verdana' size='1'><center><b>Country</b></center></font></td>";
echo"<td><font color='#8B0000' face='verdana' size='1'><center><b>Email</b></center></font></td></tr>";
while($row = mysql_fetch_array($res, MYSQL_ASSOC))
mysql_free_result($res);
{
echo"<tr><td><font color='#8B0000' face='verdana' size='1'>".$row["company"]."</font></td>";
echo"<td><font color='#8B0000' face='verdana' size='1'>".$row["country"]."</font></td>";
echo"<td><font color='#8B0000' face='verdana' size='1'>".$row["email1"]."</font></td></tr>";
}
echo"</table>";
}
mysql_close()
?>
ซึ่งโปรแกรมนี้มีทั้งหมด 38 บรรทัด แต่ error ฟ้องว่า
Parse error: parse error, unexpected $end in c:\appserv\www\main\dir_agri.txt on line 45
2. ตอนแรกผมเขียนโปรแกรมนี้ และสามารถรันแสดงผลได้เป็นปรกติ แต่ได้มาเพิ่มเติมส่วนของโปรแกรม เพื่อต้องการให้แสดงผลเพิ่มขึ้นนั้น ปรากฎว่าการรันแสดงผล Error จึงได้ลบในส่วนของที่เพิ่มเติมออก แล้วกลับมาเหมือนโปรแกรมเดิมที่สามารถแสดงผลได้ก่อนหน้า แต่ปรากฎว่าพอแสดงผลใหม่กลับฟ้องว่า Error อย่างที่แสดงครับ ทั้งๆที่ได้ลองปิด internet explorer แล้วเปิดเข้าไปรันใหม่ หลายเที่ยว ผลก็ปรากฎว่า error เหมือนเดิม จึงต้องขอคำแนะนำด้วยครับ
อนันต์
mysql_free_result($res);
{
echo"<tr><td><font color='#8B0000' face='verdana' size='1'>".$row["company"]."</font></td>";
echo"<td><font color='#8B0000' face='verdana' size='1'>".$row["country"]."</font></td>";
echo"<td><font color='#8B0000' face='verdana' size='1'>".$row["email1"]."</font></td></tr>";
}
จะเห็นว่า mysql_free_result() นั้นอยู่ต่อจาก while ทำให้ วงเล็บปีกกาทั้งสองอันไม่สามารถระบุได้ว่าเป็นของเขตของ function ใดครับ ที่ถูกควรเป็น
while($row = mysql_fetch_array($res, MYSQL_ASSOC))
{
echo"<tr><td><font color='#8B0000' face='verdana' size='1'>".$row["company"]."</font></td>";
echo"<td><font color='#8B0000' face='verdana' size='1'>".$row["country"]."</font></td>";
echo"<td><font color='#8B0000' face='verdana' size='1'>".$row["email1"]."</font></td></tr>";
}
mysql_free_result($res);

















