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,027

HOME > PHP > PHP Forum > ขอความช่วยเหลือจากพี่ๆหน่อยค่ะ คือหนูจะทำ search ให้มันโชว์สินค้าตามที่ยูเซอร์พิมเข้าไป แล้วให้มันโชว์เปน paging ด้วยอ่าค่ะ แต่เจอเออเรอร์เต็มๆเรยค่ะ



 

ขอความช่วยเหลือจากพี่ๆหน่อยค่ะ คือหนูจะทำ search ให้มันโชว์สินค้าตามที่ยูเซอร์พิมเข้าไป แล้วให้มันโชว์เปน paging ด้วยอ่าค่ะ แต่เจอเออเรอร์เต็มๆเรยค่ะ

 



Topic : 069942



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



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




คือหนูเขียนเวปให้มันโชว์สินค้าซึ่งจะให้ยูเซอร์เลือกดูสินค้าได้จากตรง menubar แล้วก็ search ได้อ่ะค่ะ หนูเลยแบ่งเป็น if else ว่า ถ้า search ไม่เท่ากับ ค่าว่าง ก็ให้เซิชตาม keyword ส่วน else มันก็จะเปนกดตรง menubar หนูอธิบายเริ่มงง เดี๋ยวช่วยดูcode หน่อยนะคะ

Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<link rel="stylesheet" type="text/css" href="mystyle.css" />
<script type="text/javascript" src="myjs.js">
</script>
<script type="text/javascript" src="framework.js">
</script>
<script>
function addCart(id){
var data = "id=" + id;
var url = "add_cart.php";

ajaxLoad('post', url, data, "cart");
}

function readCart() {
	ajaxLoad('post', "read_cart.php", null, "cart");
}


</script>
</head>

<body>

<div>
<? include('menubar.php'); ?>
</div>

<? include('onlineshop.inc.php');?>

<table width="1000" align="center" border="0">
<tr> 
	<td align="left"> <? include('sidemenu.php');?> 
    	<table id="cart" bgcolor="#FF0066">
        <tr> <td> <script> readCart(); </script>  </td></tr>
        </table>
    
    </td>
    <td>
    	<table width="100%" border="0">
        <tr> <td width="30%">&nbsp; </td>
        <td width="50%">&nbsp;  </td>
        <td>&nbsp;  </td>
        </tr>
        
        <?php include("paging.inc.php");
		
		$current_page=1;
		if(isset($_GET['page']))
		{
		$current_page=$_GET['page'];
		}
		
		$rows_per_page = 9;
		$start_row = paging_start_row($current_page,$rows_per_page);
		
		
		$keyword=$_GET["search"];
		if($keyword != "")
		{
			$argId=$_GET["search"];

                         // อันนี้ไม่เกี่ยวนะคะ^^
			/*$sql= "SELECT * from product, color,material, category  WHERE ( (product.Product_Des LIKE '%".$argId."%') OR
			((product.Color_Id = color.Color_Id)AND product.Color_Id= (SELECT Color_Id FROM color WHERE Color_Name LIKE '%".$argId."%')) OR
			((product.Mat_Id = material.Mat_Id)AND product.Mat_Id= (SELECT Mat_Id FROM material WHERE Mat_Name LIKE '%".$argId."%')) OR
			((product.Cat_Id = category.Cat_Id)AND product.Cat_Id= (SELECT Cat_Id FROM category WHERE Cat_Name LIKE '%".$argId."%'))
			  ) AND Size_Id='s1' LIMIT $start_row, $rows_per_page ;"; */ 
			  

                          // ใช้อันนี้นะคะ คือจะเลือกโปรดักขึ้นมาโชว์ โดยให้มันเช็คในเดต้าเบสว่า description ของโปรดักมันตรงกับkeywordไม๊ หรือ color_id ของตาราง product มันตรงกับ color_id ของ color ไม๊ ประมานนี้อ่ะค่ะ แล้วตรงหลังสุดที่เลือกเฉพาะไซส์ s1 ก็เพราะว่าถ้าไม่กำหนดมันจะโชว์โปรดักซ้ำๆกันเพราะโปรดักนึงมีหลายไซส์
			  $sql= "SELECT * from product, color,material, category  WHERE ( (product.Product_Des LIKE '%".$argId."%') OR
			((product.Color_Id = color.Color_Id)AND product.Color_Id= (SELECT Color_Id FROM color WHERE Color_Name LIKE '%".$argId."%'))) AND Size_Id='s1' LIMIT $start_row, $rows_per_page ;";
			
		}
		

                // ส่วนตรงนี้จะเปนการโชว์โปรดักเมื่อยูเซอร์กดจาก menubar ค่ะ
		else
		{
		$argId=$_GET["argId"];
		$sql = "SELECT SQL_CALC_FOUND_ROWS * FROM product WHERE (Cat_Id ='$argId' OR Color_Id='$argId' OR Wearer_Id='$argId' OR Mat_Id='$argId') AND Size_Id='s1' LIMIT $start_row, $rows_per_page;";
		}
		
		$result=mysql_query($sql);
		$found_rows=mysql_query("SELECT FOUND_ROWS();");
		$total_rows=mysql_result($found_rows,0,0);
		

                // ส่วนนี้เปนการเรียกใช้ paging อ่ะค่ะ หนูแยกฟังก์ชั่นไว้อีกหน้านึงค่ะ
		$total_pages = paging_total_pages($total_rows, $rows_per_page);
		
		
		if($total_rows==0){
			echo "<caption><b> no result </b></caption>";
		}
		else {
			$stop_row = paging_stop_row($start_row, $rows_per_page, $total_rows);
			echo "<caption><b> product no.". ($start_row +1) . "-" . "$stop_row from total $total_rows </b></caption>";
		} 
		
		$count=0;

echo "<table border=0 align=center >";
while($objResult = mysql_fetch_array($result))
{

	$PID = $objResult['Product_Id'];
	$Pname = $objResult['Product_Name'];
	$Pdesc1 = $objResult['Product_Des'];
	$Pdesc = substr($Pdesc1,0,80). "..." ;
	$Pprice = $objResult['Product_Prices'];
	$Ppic = $objResult['Product_Pict'];





if($count==0)
{
	echo "<tr> <td width=220 ><div id=product> <img align=center width=115 src='$Ppic?Product_Id=$PID'> </div>";
	echo "<div id=productName> <br><b> <a href='product_detail.php?PID=$PID'> $Pname </a> </b></div>";
	echo "<div id=product> <br> $Pdesc </div>";
	echo "<div id=product> <br> $Pprice Baht</div>";
	echo "<div id=product> <br> <input type=button value='add to cart' > </div>";
	echo "</td>";
	$count++;
}

else if($count==1)
{
	echo "<td width=220 > <div id=product> <img width=115 src='$Ppic?Product_Id=$PID'> </div>";
	echo "<div id=productName> <br><b><a href='product_detail.php?PID=$PID'> $Pname </a> </b> </div>";
	echo "<div id=product> <br> $Pdesc </div>";
	echo "<div id=product> <br> $Pprice Baht</div>";
	echo "<div id=product> <br> <input type=button value='add to cart' > </div>";
	echo "</td>";
	$count++;
}

else if($count==2)
{
	echo "<td width=220 > <div> <img width=115 src='$Ppic?Product_Id=$PID'> </div>";
	echo "<div id=productName> <br><b><a href='product_detail.php?PID=$PID'> $Pname </a> </b> </div>";
	echo "<div id=product> <br> $Pdesc </div>";
	echo "<div id=product> <br> $Pprice Baht</div>";
	echo "<div id=product> <br> <input type=button value='add to cart' > </div>";
	echo "</td>";
	echo "</tr>";
	$count=0;
}



} echo "</table>";
	?> 
       
		
		<p align="right"> <br />
		<?php 
		$page_range=5;
		$qry_str="argId=$argId";
		//$total_pages = paging_total_pages($total_rows, $rows_per_page);
		$pagenum = paging_pagenum($current_page, $total_pages, $page_range, $qry_str);
		?>

		
		<?
		echo "page:" . $pagenum;
		?>
		</p>
        </table>
    </td>
    
</tr>
</table>

<div>
<? include('footer.php'); ?>
</div>

</body>
</html>


เวลาหนูกดเลือกสีจาก menubar มันจะขึ้นตามปกติ คือไม่เออเรอร์อ่ะค่ะ แบบนี้ค่ะ.. สมมติว่าเลือกสีเทานะคะ..
โชว์โปรดักแบบนี้

แต่ถ้าหนูพิมสีลงไปในช่องsearch มันจะกลายเปนแบบนี้อ่ะค่ะ..
รูปที่ผิด


มันขึ้นโปรดักเดิมเปนพืดเลยค่าาา --"

ถ้าพี่ๆรู้ว่าผิดตรงไหนบอกหนูหน่อยน๊าค๊า
ขอบคุณมากค่า



Tag : PHP, MySQL









ประวัติการแก้ไข
2011-12-06 10:33:27
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-12-06 10:29:39 By : gellarjung View : 834 Reply : 1
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

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

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



Go to : PHP MySQL Search Record Paging/Pagination






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-06 10:59:01 By : webmaster
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอความช่วยเหลือจากพี่ๆหน่อยค่ะ คือหนูจะทำ search ให้มันโชว์สินค้าตามที่ยูเซอร์พิมเข้าไป แล้วให้มันโชว์เปน paging ด้วยอ่าค่ะ แต่เจอเออเรอร์เต็มๆเรยค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 04
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 อัตราราคา คลิกที่นี่