Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ทำระบบค้นหาแล้วมีปัญหาเรื่อง link page (หน้า 1,2,3,....) พอกดไปหน้า 2 แล้ว มันแสดงข้อมูลหมดค่ะ(ไม่แสดงเฉพาะเงื่อนไขที่เราหา)



 

ทำระบบค้นหาแล้วมีปัญหาเรื่อง link page (หน้า 1,2,3,....) พอกดไปหน้า 2 แล้ว มันแสดงข้อมูลหมดค่ะ(ไม่แสดงเฉพาะเงื่อนไขที่เราหา)

 



Topic : 065913



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



คือทำระบบค้นหาค่ะ โดยมีช่องให้ใส่ข้อความและเลือก List box ประมาณ 4-5 ตัวเลือก แต่อันนี้ไม่มีปัญหาค่ะ ทำสำเร็จแล้ว แต่ปัญหาก็คือ ถ้า record มีเกิน pagesize จะต้องมี link หน้า 1,2,3,... ขึ้นมาใช้ใหมคะ ทีนี้พอกดค้นหาแล้วหน้าที่ 1 มันก็ขึ้นตามเงื่อนไขที่เราเลือกค่ะ แต่พอกดหน้าที่ 2 มันกลับแสดงข้อมูลทั้งหมด เช่นตอนแรกเลือกยี่ห้อ acer ก็จะขึ้นแต่ acer แต่พอกดที่หน้า 2 กลับมี asus ด้วยประมาณนั้นค่ะ ดิฉันลองแก้ด้วยการให้มันเก็บค่าของเดิมที่เลือกไว้ที่ input ที่เราเลือกกดค้นหา แต่ก็ไม่มีผลค่ะ ได้ผลเช่นเดิม ดิฉันต้องการให้กดที่หน้าไหนๆ หน้านั้นก็ยังคงโชว์ข้อมูลที่เราเลือกตามเงื่อนไขค่ะ เช่น เราเลือก acer ไม่ว่าเราจะคลิกที่หน้า 1,2 หรือ 3 ก็ยังคงขึ้นข้อมูลของ acer อย่างเดียวประมาณนั้นค่ะ ช่วยชี้แนะหน่อยนะคะ

ตัวอย่างโค้ด
ตัวอย่าง input ที่ใช้เลือกค้นหาตามเงื่อนไข
<select name="Brand">
            <option value="<? echo $brand0 ?>"selected><? echo $brand0 ?></option>
            <option value="Acer">Acer</option>
            <option value="Apple">Apple</option>
            <option value="Asus">Asus</option>
            <option value="Axioo">Axioo</option>
            <option value="Benq">Benq</option>
            <option value="Compaq">Compaq</option>
            <option value="DELL">DELL</option>
            <option value="Fujitsu">Fujitsu</option>
            <option value="Gateway">Gateway</option>
            <option value="Gigabyte">Gigabyte</option>
            <option value="Hp">Hp</option>
            <option value="Kohjinsha">Kohjinsha</option>
            <option value="Lenovo">Lenovo</option>
            <option value="MSI">MSI</option>
            <option value="NEC">NEC</option>
            <option value="Samsung">Samsung</option>
            <option value="Sony">Sony</option>
            <option value="SVOA">SVOA</option>
            <option value="Toshiba">Toshiba</option>
            <option value="VZIO">VZIO</option>
          </select>






ตัวอย่างโค้ดส่วนหนึ่งที่ใช้ค้นหาตามเงื่อนไขและแสดง จำนวนหน้า ค่ะ
else if($brand0 != ""){
				
				if($cpu0 == ""){
					
					if($vga0 == ""){

$pagesize=6;
					
$result=mysql_query("SELECT * FROM tb_spec where Brand like '%$brand0%'");
$total=mysql_num_rows($result);

$totalpage=ceil($total/$pagesize);
$page=$_GET['page'];
if (!isset($page)) {
	$page=1;
	$goto=0;
} else {
	$goto=($page-1)*$pagesize;	
}					

						$count = 0;
						$qresult=mysql_query("SELECT * FROM tb_spec where Brand like '%$brand0%' ORDER BY ID ASC LIMIT $goto, $pagesize");
					while ($dbarr= mysql_fetch_array($qresult)) {
						$count++;
						$pic = $dbarr[Picture];
						$brand = $dbarr[Brand];
						$model = $dbarr[Model];
						$price = $dbarr[Price];
						$cpu = $dbarr[Processor];
						$ram = $dbarr[Memory];
						$vga = $dbarr[Graphic];
						$monitor = $dbarr[Display];
						if($count >3){
							echo"<tr>";
							
							}

						
echo "
						 <td>   
     					<div class='prod_box'>
        				<div class='top_prod_box'></div>
           				 <div class='center_prod_box'>            
               			  <div class='product_title'><a href='viewDetail3.php?id_edit=$model'>$brand&nbsp;&nbsp;$model</a></div>
                			 <div class='product_img'><img src ='image/$pic' width=200 ></div>
                			 <div class='prod_price'><span class='reduce'>B</span> <span class='price'>$price</span></div> 
							 <div class='prod_details_tab'>
							 <strong>CPU : &nbsp; $cpu </strong><br />
                             <strong>VGA : &nbsp; $vga </strong><br />
                             <strong>RAM : &nbsp; $ram </strong><br />
                             <strong>Monitor : &nbsp; $monitor </strong><br />
       						<a href='viewDetail3.php?id_edit=$model' class='prod_details' onClick='return confirm(ต้องการดูข้อมูลโน้ตบุ๊คยี่ห้อ $brand รุ่น $model ใช่หรือไม่)'>รายละเอียด</a>            
            </div>                     
        </div>
           			 </div>
           			 <div class='bottom_prod_box'></div>           
</td> ";
if($count >3){
							
							$count=0;
							
							}
}




If ($totalpage>1) {
	for ($i=1; $i<=$totalpage;$i++) {
		if ($i == $page) {
			echo "หน้า $page";
		} else {
		$qresult=mysql_query("SELECT * FROM tb_spec where Brand like '%$brand0%' ORDER BY ID ASC LIMIT $goto, $pagesize");
			echo "| <a href=\"search.php?page=$i\">$i</a>";
		}
	}
}


						}



ถ้าเข้าใจไม่ผิด ปัญญหาน่าจะเกิดจากคำสั่ง echo "| <a href=\"search.php?page=$i\">$i</a>"; แต่นึกไม่ออกจริงๆ ค่ะ ว่าจะให้มัน link ไปหน้า 2,3,... ตามเงื่อนไขเก่าได้อย่างไร รบกวนช่วยชี้แนะด้วยนะคะ



Tag : PHP, MySQL









ประวัติการแก้ไข
2011-09-04 13:34:57
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-09-04 13:33:11 By : Zonza View : 1012 Reply : 7
 

 

No. 1



โพสกระทู้ ( 3,848 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Twitter Facebook

ผมไม่แน่ใจว่าเงื่อนไขการค้นหาของคุณมีอะไรบ้างน่ะครับ
สมมุติว่า มี ยี่ห้อโน็ตบุค , รุ่น , ราคา แล้วกันน่ะครับ
การส่งค่าไปเพจ 1,2,3.....ก็ต้องส่งค่าไปให้เพจนั้นๆด้วยครับ

Code (PHP)
<a href="search.php?page=<?=$i?>&brand=<?=$brand?>&model=<?=$model?>&price=<?=$price?>">$i</a>







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-04 13:56:35 By : mangkunzo
 


 

No. 2



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ขอบคุณ คุณ mangkunzo นะคะ แต่ก็ยังไม่ได้อยู่ดีค่ะ ลองทำดูแล้วบน url ที่เป็นชื่อ link ก็ขึ้นนะคะว่า &&brand=Acer (ต้องใช้&& ค่ะ & ตัวเดียวไม่ขึ้น) แต่มันก็ยังโชวทุกยี้ห้ออยู่ดีค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-04 21:03:10 By : Zonza
 

 

No. 3



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

เหมือนพอกดไปที่หน้าสองแล้ว ค่า value ตรง input มันเป็นค่าว่างไปแล้วค่ะ มันเลยโชว์หมดตามเงื่อนไขที่ว่าถ้าค่า input เป็นค่าว่างทุกตัวให้โชว์หมดค่ะ จะทำอย่างไรที่ค่าที่เมื่อกดหน้า 2 แล้ว มันก็ยังคงโชว์ข้อมูลตามเงื่อนไขเดิมอยู่นี่สิคะ โอ้...เพิ่งเคยเจอด้วย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-04 22:10:55 By : Zonza
 


 

No. 4



โพสกระทู้ ( 3,848 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Twitter Facebook

ตอบความคิดเห็นที่ : 2 เขียนโดย : Zonza เมื่อวันที่ 2011-09-04 21:03:10
รายละเอียดของการตอบ ::
& ถูกแล้วครับ && ไม่ถูกครับ
ที่บอกว่ามันขึ้นหมด เช็คเงื่อนไขถูกหรือยังครับ
ค่าที่ส่งผ่าน url method จะเป็น GET เวลาเอาไปเช็คในเงื่อนไข
ก็ต้องเอา $_GET['ตัวแปร'] ไปใช้เป็นเงื่อนไขน่ะครับ

เช่น
Code (PHP)
if(!empty($brand) or !empty($_GET['brand']))
{
........
}


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-04 23:10:36 By : mangkunzo
 


 

No. 5



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ใช้ $brand0 = $_GET['Brand']; ค่ะ แล้วเอา $brand0 ไปใช้อีกที
และ & ตัวเดียวถูกต้องแล้วค่ะ ตอนนั้นโค้ดมันมั่วไปหน่อยค่ะ แต่ก็ยังไม่ได้อยู่ดีค่ะ

ประมาณนี้ค่ะ

if($brand0 != ""){


if($cpu0 == ""){



if($vga0 == ""){
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-05 10:38:37 By : Zonza
 


 

No. 6



โพสกระทู้ ( 3,848 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Twitter Facebook

เอาโค้ดเต็มๆมาดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-05 13:29:59 By : mangkunzo
 


 

No. 7



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ได้แล้วค่ะ ให้เพื่อนที่มันเทพๆ ช่วยดูให้ เขารื้อโค้ดใหม่หมดเลยเพราะเขาบอกว่าโค้ดเรามันเป็นโค้ดถึก เขียนเยอะ ดูยาก ก็เลยเขียนให้ให้ง่ายๆ ก็ได้เลย ก็งงๆ เหมือนกันค่ะ เพราะเราก็เข้าใจโค้ดใหม่ที่เพื่อนเขียนนะคะ ว่ามีหลักการเก็ทค่าไม่ต่างจากเรา แต่เพื่อนใช้วิธีการต่อ string เอา โค้ดจะได้ไม่ยาว อย่างไรก็ขอขอบคุณมากๆ นะคะ ที่พยายามช่วย ต่อไปนี้คงต้องหัดเขียนโค้ดให้มันกระชับมั่งแล้วค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-05 19:39:00 By : Zonza
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ทำระบบค้นหาแล้วมีปัญหาเรื่อง link page (หน้า 1,2,3,....) พอกดไปหน้า 2 แล้ว มันแสดงข้อมูลหมดค่ะ(ไม่แสดงเฉพาะเงื่อนไขที่เราหา)
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่