หัวข้อ: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: manesz ที่ 07 สิงหาคม 2011, 14:41:32 ตอนนี้ผมกำลังการ Function การ Search โดยใช้ Source นี้ครับ
<form name="frmSearch" method="get" action="<?=$_SERVER['SCRIPT_NAME'];?>"> <table width="599" border="1"> <tr> <th>Keyword <input name="txtKeyword" type="text" id="txtKeyword" value="<?=$_GET["txtKeyword"];?>"> <input type="submit" value="Search"></th> </tr> </table> </form> <? if($_GET["txtKeyword"] != "") { include "connect.php"; mysql_select_db($dbname); // Search By Name or Email $strSQL = "SELECT * FROM tb_interview WHERE (int_quiz LIKE '%".$_GET["txtKeyword"]."%' or int_ans LIKE '%".$_GET["txtKeyword"]."%')"; $objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]"); $Num_Rows = mysql_num_rows($objQuery); $Per_Page = 10; // Per Page $Page = $_GET["Page"]; if(!$_GET["Page"]) { $Page=1; } $Prev_Page = $Page-1; $Next_Page = $Page+1; $Page_Start = (($Per_Page*$Page)-$Per_Page); if($Num_Rows<=$Per_Page) { $Num_Pages =1; } else if(($Num_Rows % $Per_Page)==0) { $Num_Pages =($Num_Rows/$Per_Page) ; } else { $Num_Pages =($Num_Rows/$Per_Page)+1; $Num_Pages = (int)$Num_Pages; } $strSQL .=" order by int_id ASC LIMIT $Page_Start , $Per_Page"; $objQuery = mysql_query($strSQL); ?> <table width="600" border="1"> <tr> <th width="91"> <div align="center">CustomerID </div></th> <th width="98"> <div align="center">Name </div></th> <th width="198"> <div align="center">Email </div></th> <th width="97"> <div align="center">CountryCode </div></th> </tr> <? while($objResult = mysql_fetch_array($objQuery)) { ?> <tr> <td><div align="center"><?=$objResult["int_id"];?></div></td> <td><?=$objResult["int_quiz"];?></td> <td><?=$objResult["int_ans"];?></td> <td><div align="center"><?=$objResult["int_refer"];?></div></td> </tr> <? } ?> </table> <br> Total <?= $Num_Rows;?> Record : <?=$Num_Pages;?> Page : <? if($Prev_Page) { echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page&txtKeyword=$_GET[txtKeyword]'><< Back</a> "; } for($i=1; $i<=$Num_Pages; $i++){ if($i != $Page) { echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i&txtKeyword=$_GET[txtKeyword]'>$i</a> ]"; } else { echo "<b> $i </b>"; } } if($Page!=$Num_Pages) { echo " <a href ='$_SERVER[SCRIPT_NAME]?Page=$Next_Page&txtKeyword=$_GET[txtKeyword]'>Next>></a> "; } mysql_close(); } ?> แต่ปรากฏว่าการแสดงผลจากหน้า test นั้นสามารถแสดงผลได้เป็นปกติ (http://upic.me/i/65/dr081.png) (http://upic.me/show/26943897) แต่หากนำมาเข้าสู่ Template นั้นจะแสดงภาพแบบนี้ ซึ่งมีการเรียกแบบนี้ $strSQL = "SELECT * FROM (http://upic.me/i/s4/qvxs3.png) (http://upic.me/show/26943960) แต่หากผมตัดเรียกเพียงแค่ $strSQL = "SELECT * FROM (http://upic.me/i/yt/wwul2.png) (http://upic.me/show/26943908) ไม่ทราบว่าพอจะมีวิธีตรวจสอบแบบใดบ้างครับ หัวข้อ: Re: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: ball6847 ที่ 07 สิงหาคม 2011, 14:49:12 ไม่รู้เป็นไร เน็ต TRUE ผม ไม่เคยมีบุญได้เห็นภาพจาก upic.me เป็นมาหลายปีแล้ว
หัวข้อ: Re: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: manesz ที่ 07 สิงหาคม 2011, 14:54:44 ไม่รู้เป็นไร เน็ต TRUE ผม ไม่เคยมีบุญได้เห็นภาพจาก upic.me เป็นมาหลายปีแล้ว ผมก็ TRUE นะครับ ก็สามารถใช้งานได้ ปกติ ลองเรียกเป็น IP ดูครับว่าได้หรือป่าว ..... หัวข้อ: Re: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: mSkyline ที่ 07 สิงหาคม 2011, 14:56:47 ลองตัด () ดูมั้ยครับ ผมไม่แน่ใจว่า mysql ต้องใช้หรือเปล่า
แล้ว if($_GET["txtKeyword"] != "") ตรงนี้ มี else มั้ยครับ ถ้ามันไม่มีค่า txtKeyword มา พอดีมองผ่านๆแล้วมันไม่เจอ หัวข้อ: Re: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: countdown2012 ที่ 07 สิงหาคม 2011, 15:05:44 echo $strSQL; //แล้วเอาไปเทสที่ phpmyadmin
:P หัวข้อ: Re: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: manesz ที่ 07 สิงหาคม 2011, 15:27:08 ลองตัด () ดูมั้ยครับ ผมไม่แน่ใจว่า mysql ต้องใช้หรือเปล่า แล้ว if($_GET["txtKeyword"] != "") ตรงนี้ มี else มั้ยครับ ถ้ามันไม่มีค่า txtKeyword มา พอดีมองผ่านๆแล้วมันไม่เจอ ผมลอง test echo $_GET["txtKeyword"] แล้วครับยังเห็นค่าที่กรอกลงไป อยุ่ครับ ..... แต่ไม่ค่อยเข้าใจตอนนี้ว่าทำไมมันไม่แสดงผลเมื่อกำหนดเงื่อนไขในการ SELECT หัวข้อ: Re: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: mSkyline ที่ 07 สิงหาคม 2011, 15:31:35 อยากรุ้มัน error อะไรก็แก้ตามนี้ครับ
$objQuery = mysql_query($strSQL) or die (mysql_error()); กับ print_r($objQuery) กับ echo $strSQ ดูครับ[ หัวข้อ: Re: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: manesz ที่ 07 สิงหาคม 2011, 15:59:28 อยากรุ้มัน error อะไรก็แก้ตามนี้ครับ $objQuery = mysql_query($strSQL) or die (mysql_error()); กับ print_r($objQuery) กับ echo $strSQ ดูครับ[ ต้องขอบคุณ คุณmSkylineและคุณcountdown2012 ด้วยนะครับจากสิ่งที่ทั้ง 2 ท่านได้แนะนำนั้นผมได้เจอสิ่งทีเป็นปัญหาแล้วครับ หลังจากที่ผมสอบสอบโดยการพิมพ์ภาษาไทยธรรมดาเข้าไปปรากฏว่า ยังคงไม่สามารถทำการค้นหาได้ (http://upic.me/i/4g/70tn5.png) (http://upic.me/show/26947249) แต่ทว่าผมลองเปลี่ยนเป็นคำ "?" ในการค้นหาปรากฏว่า (http://upic.me/i/q3/doth6.png) (http://upic.me/show/26947305) ซึ่งคาดว่าน่าจะเกิดจากการ Encode ระหว่างหน้า Page และ DB ครับ ซึ่งในหน้า Page นั้นผม Encode ด้วย ไทย-Window แต่ใน PHP ผมกำหนด utf8_general_ci ซึ่งผลจากการนำเข้าข้อมูลปรากฏว่าเป็นภาษาที่อ่านไม่ออกแต่ทว่า เมื่อใส่ค่าจากหน้า Page ในการเพิ่มข้อมูลเข้าไปและหน้า Page ที่ทำการใส่ค่าเพื่อค้นหานั้นเป็นการ Encode ลักษณะเดียวกันแต่ให้ผลไม่เหมือนกันไม่ทราบว่า ผมจะตรวจสอบลักษณะการ Encode ได้ด้วยวิธีใดบ้างครับ หัวข้อ: Re: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: manesz ที่ 07 สิงหาคม 2011, 16:07:07 หลังจากที่ผมทำการเปลี่ยน Encoding ที่ Template แล้วทดลองค้นหาข้อมูลใหม่อีกครั้ง ปรากฏว่าสามารถค้นหาได้ปกติแล้วครับ สาเหตุมาจากความผิดพลาดในการกรอกข้อมูลก่อนการ จัดรูปแบบ Encoding ให้ถูกต้องเสียก่อนต้อง ขอขอบพระคุณทุกท่านที่กรุณามาก ๆ ครับ
(http://upic.me/i/83/986m1.png) (http://upic.me/show/26947889) :wanwan008: :wanwan008: :wanwan008: :wanwan008: :wanwan008: หัวข้อ: Re: เกิดปัญหาจากการแสดงผล ของ Function การ Search ครับ เริ่มหัวข้อโดย: ball6847 ที่ 07 สิงหาคม 2011, 16:20:19 เป็น utf8 ให้หมดซะคับ มาตราฐาน
|