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

HOME > PHP > PHP Forum > ช่วยดูโค๊ดการค้นหาข้อมูลหน่อยครับ พอดีว่าผมเขียนโค๊ดการค้นหาข้อมูลของสินค้า ลองทดสอบดูแล้วก็ค้นหาได้ตามปกติ



 

ช่วยดูโค๊ดการค้นหาข้อมูลหน่อยครับ พอดีว่าผมเขียนโค๊ดการค้นหาข้อมูลของสินค้า ลองทดสอบดูแล้วก็ค้นหาได้ตามปกติ

 



Topic : 043557



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



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




พอดีว่าผมเขียนโค๊ดการค้นหาข้อมูลของสินค้า ลองทดสอบดูแล้วก็ค้นหาได้ตามปกติ แต่ว่าเวลาจะไปดูหน้าอื่นนี่สิครับมันไม่ยอมส่งค่าไปกับ link หน้าให้นะครับแก้ไขมาเกือบสองวันแล้ว ปวดหัวมาก ช่วยดดูให้หน่อยนะครับ

ขอบคุณครับ
Code (PHP)
<? 
	session_start(); 
?>
<!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=windows-874" />
<title>ค้นหารายการสินค้า</title>
<link href="css/black-ms.css" rel="stylesheet" type="text/css" />
</head>

<body>
<form id="form1" name="form1" method="post" action="<? echo $_SERVER['PHP_SELF'];?>">
<?
	include("connect.php");
	/*$sql="select * from tbproduct";
	$data=mysql_query($sql);*/
?>
  <table width="731" align="center" class="ms13">
    <tr>
      <td width="46">&nbsp;</td>
      <td width="321">ค้นหารายการสินค้า</td>
      <td width="85">&nbsp;</td>
      <td width="259">&nbsp;</td>
    </tr>
    
    <tr>
      <td>&nbsp;</td>
      <td colspan="2" align="right">ยี่ห้อสินค้า
        <select name="selType" id="selType">
        <option value="0">= เลือกยี่ห้อทั้งหมด =</option>
        <?
						$sql_type ="select * from tbtype order by  type_name";
						$data_type = mysql_query($sql_type);
							while($rs=mysql_fetch_array($data_type)){
									if($rs[type_id]==$selType){
					?>
        <option value="<? echo $rs[type_id];?>" selected="selected"><? echo $rs[type_name];?></option>
        <?
						 			}else{
					 ?>
        <option value=" <? echo $rs[type_id];?>"><? echo $rs[type_name];?></option>
        <?
									}
							}
					?>
      </select></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td colspan="2" align="right">ราคา
  
        <select name="selPrice" class="ms13" id="selPrice" >
          <option value="0">เลือกทุกราคา</option>
          <option value="1">0-5,000 บาท</option>
          <option value="2">5,001-10,000 บาท</option>
          <option value="3">10,000 บาท ขึ้นไป</option>
        </select>
      </td>
      <td><input name="Submit" type="submit" class="ms13" value="ค้นหา" /></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td colspan="2" align="right">&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td colspan="3" valign="top"><table width="459" height="550" border="0" >
<?
	//เขียนคำสั่ง sql ดึงข้อูลตามหน้าที่เลือก
	if(isset($_POST["Submit"])||!empty($_GET["selType"])||!empty($_GET["selPrice"])){
			if(isset($_POST["Submit"])){
					$selectType=$_POST["selType"];
					$selectPrice=$_POST["selPrice"];
					
					if($selectType==0 && $selectPrice == 0){
						$condition = 1;
					} elseif ($selectType == 0 && $selectPrice == 1){
						$condition = 2;
					} elseif ($selectType == 0 && $selectPrice == 2){ 
						$condition = 3;
					} elseif ($selectType == 0 && $selectPrice == 3){ 
						$condition = 4;
					} elseif ($selectType != 0 && $selectPrice == 0){ 
						$condition = 5;
					} elseif ($selectType != 0 && $selectPrice == 1){ 
						$condition = 6;
					} elseif ($selectType != 0 && $selectPrice == 2){ 
						$condition = 7;
					} elseif ($selectType != 0 && $selectPrice == 3){ 
						$condition = 8;
					}	
			}else if(!empty($_GET["selType"])||!empty($_GET["selPrice"])){
					$selectType=$_GET["selType"];
					$selectPrice=$_GET["selPrice"];
					
					if($selectType==0 && $selectPrice == 0){
						$condition = 1;
					} elseif ($selectType == 0 && $selectPrice == 1){
						$condition = 2;
					} elseif ($selectType == 0 && $selectPrice == 2){ 
						$condition = 3;
					} elseif ($selectType == 0 && $selectPrice == 3){ 
						$condition = 4;
					} elseif ($selectType != 0 && $selectPrice == 0){ 
						$condition = 5;
					} elseif ($selectType != 0 && $selectPrice == 1){ 
						$condition = 6;
					} elseif ($selectType != 0 && $selectPrice == 2){ 
						$condition = 7;
					} elseif ($selectType != 0 && $selectPrice == 3){ 
						$condition = 8;
					}	
					
			}
					switch ( $condition ) {
							case 1 :  $condition_sql = " order by pro_id asc "; 	break ;
							case 2 :  $condition_sql = "where sale_price between 0 and 5000 order by pro_id desc"; break;
							case 3 :  $condition_sql = "where sale_price between 5001 and 10000 order by pro_id desc"; 	break ;
							case 4 :  $condition_sql = "where sale_price >=10000 order by pro_id desc"; 	break ;
							///
							case 5 :  $condition_sql = "where type_id = '$selectType' order by pro_id desc"; 	break ;
							case 6 :  $condition_sql = "where type_id = '$selectType' and (sale_price between 0 and 5000) order by pro_id desc"; 	break ;
							case 7 :  $condition_sql = "where type_id = '$selectType' and (sale_price between 5001 and 10000) order by pro_id desc"; 	break ;
							case 8 :  $condition_sql = "where type_id = '$selectType' and sale_price >= 10000 order by pro_id desc"; 	break ;
					}	//ปิด switch ( $condition ) 
			echo $search="selType=$selectType&selPrice=$selectPrice "; echo "<br />";

	}		
	echo $sqlChk="select * from tbproduct ".$condition_sql; echo "<br />";
	$dataChk = mysql_query($sqlChk);
	
	$total_rec=mysql_num_rows($dataChk); //หาจำนวนเรคคอร์ดทั้งหมด
	$page_size=4; //กำหนดจำนวนเรคคอร์ดของหน้า
	$total_page=ceil($total_rec/$page_size); //จำนวนหน้าที่แสดงผลได้
	//ตรวจสอบว่าทำงานอยู่หน้าไหน โดยใช้ตัวแปล $page ตรวจสอบ
	if($page=="")//เปิดเพจครั้งแรก
	{
		$page=1;
		$start_rec=0; //ดึงข้อมูลในตำแหน่งที่ 0 ของตาราง product
	}else {//ดูสินค้าหน้าที่ต้องการ
		$page=$_GET["page"];
		$start_rec=$page_size*($page-1); //สูตรหาตำแหน่งเรคคอร์ด
	}

	echo $sql="select * from tbproduct ".$condition_sql." limit $start_rec,$page_size";
	$data = mysql_query($sql);
	for($i=1;$i<=$page_size/2;$i++)
	{
?>
        <tr>
          <td width="224" valign="top" class="dtext"><?
		$rs=mysql_fetch_array($data);//ดึงข้อมูล
		if($rs){
	?>
              <table width="199" border="0" align="center" class="dtext">
                <tr>
                  <td height="115" class="ms13"><img src="MobileImage/<? echo $rs[picture] ?>" width="70" height="90" /></td>
                </tr>
                <tr>
                  <td class="ms13"><? echo "รหัสสินค้า : ".$rs[pro_id] ?></td>
                </tr>
                <tr>
                  <td class="ms13"><? echo "ชื่อสินค้า : ".$rs[type_name]."&nbsp;".$rs[pro_name] ?></td>
                </tr>
                <tr>
                  <td class="ms13"><? echo "ราคา : ".$rs[sale_price]." บาท" ?></td>
                </tr>
                <tr>
                  <td height="25" valign="middle" class="ms13"><a href="phone_desc.php?pro_id=<?=$rs[pro_id]?>" class="menu13black">แสดงรายละเอียดสินค้า</a></td>
                </tr>
                <tr>
                  <td height="25" align="center" valign="middle" class="ms13"><div align="center"><a href="temp_order_pro.php?pro_id=<? echo $rs[pro_id]?>"><img src="Image/bl_shopping.gif" width="98" height="21"  border="0" align="left"/></a></div></td>
                </tr>
              </table>
            <?
    }
	?>          </td>
          <td width="10" valign="top" class="dtext">&nbsp;</td>
          <td width="221" valign="top" class="dtext"><?
		$rs=mysql_fetch_array($data);
		if($rs) {
	?>
              <table width="199" border="0" align="center" class="dtext">
                <tr>
                  <td height="115" class="ms13"><img src="MobileImage/<? echo $rs[picture] ?>" width="70" height="90" /></td>
                </tr>
                <tr>
                  <td class="ms13"><? echo "รหัสสินค้า : ".$rs[pro_id] ?></td>
                </tr>
                <tr>
                  <td class="ms13"><? echo "ชื่อสินค้า : ".$rs[type_name]."&nbsp;".$rs[pro_name] ?></td>
                </tr>
                <tr>
                  <td class="ms13"><? echo "ราคา : ".$rs[sale_price]." บาท" ?></td>
                </tr>
                <tr>
                  <td height="25" class="ms13"><a href="phone_desc.php?pro_id=<?=$rs[pro_id]?>" class="menu13black">แสดงรายละเอียดสินค้า</a></td>
                </tr>
                <tr>
                  <td height="25" class="ms13"><div align="center"><a href="temp_order_pro.php?pro_id=<? echo $rs[pro_id]?>"> <img src="Image/bl_shopping.gif" width="98" height="21"  border="0" align="left" style="clear:both" /></a></div></td>
                </tr>
              </table>
            <?
    }
	?>          </td>
          <?
    } 
	?>
        </tr>
        <tr>
          <td height="24" valign="top" class="ms13"><?   //แสดงหน้าให้ผู้ใช้งานคลิก
          echo "<b>หน้าที่ </b> [".$page."จาก".$total_page."] ";
          for($i=1;$i<=$total_page;$i++)
		  if($i==$page)
			  	 echo $i;
			else
	    		 echo " <a href=?$search&page=$i>$i</a> ";	  
   ?></td>
          <td valign="top">&nbsp;</td>
          <td valign="top">&nbsp;</td>
        </tr>
      </table></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
  </table>
</form>
</body>
</html>



ส่วนนี่เป็นข้อมูลของตาราง tbproduct ครับ
/*
SQLyog Enterprise - MySQL GUI v8.05
MySQL - 5.0.51b-community-nt-log : Database - dbphone
*********************************************************************
*/


/*!40101 SET NAMES utf8 */;

/*!40101 SET SQL_MODE=''*/;

/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;

CREATE DATABASE /*!32312 IF NOT EXISTS*/`dbphone` /*!40100 DEFAULT CHARACTER SET utf8 */;

USE `dbphone`;

/*Table structure for table `tbproduct` */

DROP TABLE IF EXISTS `tbproduct`;

CREATE TABLE `tbproduct` (
`pro_id` int(5) NOT NULL auto_increment,
`type_id` int(5) NOT NULL,
`pro_name` varchar(30) NOT NULL,
`pro_desc` varchar(100) NOT NULL,
`sale_price` int(7) NOT NULL,
`pro_qty` int(2) NOT NULL,
`picture` varchar(30) NOT NULL,
PRIMARY KEY (`pro_id`)
) ENGINE=MyISAM AUTO_INCREMENT=125 DEFAULT CHARSET=utf8;

/*Data for the table `tbproduct` */

insert into `tbproduct`(`pro_id`,`type_id`,`pro_name`,`pro_desc`,`sale_price`,`pro_qty`,`picture`) values (5,1,'w332','สวยมากเลยนะจ๊ะ..ขอบอก',1200,9,'nokia_5730_xpressmusic_s.jpg'),(1,1,'s22','ดีไซต์หรู บางเฉียบ น้ำหนักเบา',2350,10,'nokia_5235_comes_with_music_s.'),(2,1,'w355','eeeeeeeeeeeeeeeee',1500,10,'nokia_2220_slide_s.jpg'),(3,2,'i8000','gtyujikol;;\'\'[[[',1200,10,'samsung_i8000omnia.jpg'),(4,2,'candys3650','- แอฟพลิเคชั่นมากมาย\r\n- ฟังเพลงได้นานถึง 250 ชั่วโมง\r\n- กล้อง 2 ล้านพิกเซล',5900,10,'samsung_a167_s.jpg'),(6,2,'5600','dddddddd',15500,10,'samsung_s5600.jpg'),(7,4,'e6010','บางเฉียบ ทันสมัยด้วยกล้อง 2 ล้านพิกเซล',6500,10,'i-mobile_ie6010.jpg'),(8,4,'2260','หน้าจอบางเฉียบ สุดหรู\r\n',6000,10,'i-mobile_hitz2206.jpg'),(9,5,'8520','ทันสมัย ฟังก์ชั่นครบครัน',12500,10,'blackberry_curve8520.jpg'),(10,2,'5050','sjjjjjjjjjjjjjjjjjjjjjjjjjjjj',2500,10,'samsung_s5050.jpg'),(11,5,'9700','eeeeeeeeeeeeeeeeeee',30000,10,'blackberry_bold9700.jpg'),(12,6,'3456','dddddddddddddddddddddddd',2000,9,'gnet-g518.jpg'),(13,6,'2341','sssssssssssssssssssssss',2500,10,'gnet-g525c.jpg'),(14,2,'c3010','กล้อง 2 ล้านพิกเซล คมชัด สามารถบันทึกเบอร์ได้ 1500 เบอร์',2500,10,'samsung_c3010_s.jpg'),(15,3,'w112','รูปโฉมงดงาม ดีไซต์หรู น้ำหนักเบา',3500,10,'sony_ericsson_w890i_s.jpg');

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-06-02 14:34:48 By : arthonkaew View : 1134 Reply : 5
 

 

No. 1



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



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


จากที่ดูจากปัญหาแล้วดูโค๊ดคร่าวๆ นะครับ

Code (PHP)
echo " <a href=?$search&page=$i>$i</a> ";  


น่าจะเป็นตรงนี้นะครับจะต้องเป็น

Code (PHP)
echo " <a href=?search=$search&page=$i>$i</a> ";


แบบนี้ลองดูครับผมก็ดูไม่ค่อยละเอียด






Date : 2010-06-02 14:41:33 By : AnimalMan
 


 

No. 2



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



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


ยังไม่ได้เหมือนเดิมครับผม
สมมติผมเลือกข้อมูลตามภาพแล้วกดปุ่มค้นหา
selectType
แล้วต่อไปผมจะเลือกไปดูหน้าที่ 2 แล้วมันไม่ส่งค่าไปกับ link ตามภาพครับ
link

อีกอย่างครับ ผมอยากทำให้ list ที่เลือกราคาอยู่ที่แบบที่เราเลือกหลังจาก กดปุ่มค้นต้องทำอย่างไรครับ
ขอบคุณครับ
Date : 2010-06-02 14:52:09 By : arthonkaew
 

 

No. 3



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



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

Code (PHP) วิธีให้ราคาอยู่ที่เราเลือก หลังจากค้นหา
<?php
$selPrice = isset($_GET['selPrice']) ? $_GET['selPrice'] : '';  // ตรงนี้เอาไว้กัน error กรณีไม่มีค่า selPrice ส่งมา
?>
<select name="selPrice" class="ms13" id="selPrice" >
<option value="0" <?=$selPrice==0?'checked':''?>>เลือกทุกราคา</option>
<option value="1" <?=$selPrice==1?'checked':''?>>0-5,000 บาท</option>
<option value="2" <?=$selPrice==2?'checked':''?>>5,001-10,000 บาท</option>
<option value="3" <?=$selPrice==3?'checked':''?>>10,000 บาท ขึ้นไป</option>
</select>


ส่วนอีกปัญหา เรื่องเปลี่ยนหน้า ลองใช้ ie viewsource หลัง ค้นหาดูครับ ว่า ตรงเลขหน้า พวกตัวแปรส่งค่ามาครมั้ย ถ้าไม่ ต้องไล่ echo ค่าดูคับ ว่าสูญหายไปตอนไหน
Date : 2010-06-02 17:34:29 By : kerb
 


 

No. 4



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



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


ถ้าได้ค่าตามที่บอกผมว่าลองดูที่โค๊ดตรงนี้นะครับ

if(isset($_POST["Submit"])){
$selectType=$_POST["selType"];
$selectPrice=$_POST["selPrice"];

กับ

echo $search="selType=$selectType&selPrice=$selectPrice ";

ถ้า register_global เป็น off นั้นก็แสดงว่าจะค่าเมื่อเราคลิกหน้า 2 ซึ่งส่งมาแบบ get จะไม่มีค่านะครับ
เพราะตอนเรียกใช้งาน เราเรียกใช้งานแบบ local variable แล้วในตัวโปรแกรมจะมีแค่แปลงจาก
superglobal variable ที่เป็น post array เป็น local variable ที่ตรงนี้

if(isset($_POST["Submit"])){
$selectType=$_POST["selType"];
$selectPrice=$_POST["selPrice"];

แต่เมื่อมีการส่งข้อมูลแบบ Get มาจึงไม่มีการแปลงค่าครับ ถ้าหากผิดพลาดก็ขออภัยด้วยครับ สำหรับอีกเรื่องตามโพสต์ด้านบนเลยครับ
Date : 2010-06-02 21:36:48 By : AnimalMan
 


 

No. 5



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



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


ขอบคุณครับ
ผมเจอข้อผิดพลาดของผมแล้วครับ
Code (PHP)
$search="selType=$selectType&selPrice=$selectPrice "; //ผมไปเว้นวรรคข้างหลังมันทีนึง


เลยแก้ไขเป็น
Code (PHP)
$search="selType=$selectType&selPrice=$selectPrice"; //ลบเว้นวรรคข้างหลังออกไป


ขอบคุณทุกท่านที่มาให้ความรู้และความช่วยเหลือแก่ผมครับ
ผมไล่ดูโค๊ดแบบที่คุณ kerb บอกครับ เลยทำให้รู้ว่าเราผิดพลาดตรงไหน
ขอบคุณอีกครั้งครับ
Date : 2010-06-03 11:49:56 By : arthonkaew
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยดูโค๊ดการค้นหาข้อมูลหน่อยครับ พอดีว่าผมเขียนโค๊ดการค้นหาข้อมูลของสินค้า ลองทดสอบดูแล้วก็ค้นหาได้ตามปกติ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 02
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่