พบกับบทความเกี่ยวกับคอมพิวเตอร์และ programming ได้ที่ http://articles.modoeye.com | บล็อกอาหาร
PHP development / คำแนะนำในเรื่อง error
Anan
Anan
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 เหมือนเดิม จึงต้องขอคำแนะนำด้วยครับ

อนันต์

Administrator
Tue 3 Oct 2006 11:42:15
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>";
    }

จะเห็นว่า 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);
Reply
Name:
E-mail:
Home | Services | Forum | Classified | Directories | Support | Contact
ATOM feed RSS 0.9 feed RSS 1.0 feed RSS 2.0 feed
Copyright © 2005 - 2007 Modoeye.com, All Rights Reserved.
Disclaimer | Privacy policy | Term of Use | Term of Services
Valid XHTML Valid CSS! PHP: Hypertext Preprocessor MySQL database Apache Powered! FreeBSD Power to serve
Modoeye Sitemap Client login