ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingพี่ๆครับใครเก่ง php ช่วยผมทำระบบค้นหาหน่อยครับ
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: พี่ๆครับใครเก่ง php ช่วยผมทำระบบค้นหาหน่อยครับ  (อ่าน 2109 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
วอนนอนคุก
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 117
ออฟไลน์ ออฟไลน์

กระทู้: 522



ดูรายละเอียด เว็บไซต์
« เมื่อ: 06 มกราคม 2011, 01:01:20 »

โค๊ด:
// รับค่าตัวแปล
$gender = $_GET['tb_gender'];
$age = $_GET['tb_age'];
$province = $_GET['tb_province'];
$photo = $_GET['tb_photo'];

// รับค่าตัวแปล ทำลิงค์ แบ่งหน้า
$link_page =  "&gender=$gender&age=$age&province=$province&photo=$photo";

if (empty($page)){
$page=1;
}

// กำหนดตัวแปล
// ( 2 ) เพศ
if ($gender=="0") {
$gender_a = "";
}
else {
$gender_a = "$gender";
};

// ( 3 ) อายุ
if ($age=="0") {
$age_a = "";
}
elseif ($age=="a1") {
$age_a = "AND age < 18 ";
}
elseif ($age=="a2") {
$age_a = "AND age between 18 and 20 ";
}
elseif ($age=="a3") {
$age_a = "AND age between 21 and 30 ";
}
elseif ($age=="a4") {
$age_a = "AND age between 31 and 40 ";
}
elseif ($age=="a5") {
$age_a = "AND age > 41 ";
}
else {};

// ( 4 ) จังหวัด
if ($province=="0") {
$province_a = "";
}
else {
$province_a = "$province";
};

// ( 6 ) Picture
if ($photo == "1") {
$photo_a = "AND picture !='0'";
}
else {
$photo_a = "";
};


// ติดต่อ database เพื่ออ่านข้อมูล

// หาจำนวนหน้าทั้งหมด
mysql_connect($dbhost,$dbuname,$dbpass);
$sql = "select * from $tblname WHERE (gender LIKE '%$gender_a%' or age LIKE '%$age_a%' or province LIKE '%$province_a%' or age LIKE '%$photo_a%')";
//$sql = "SELECT * FROM $tblname WHERE (Name LIKE '%".$_GET["txtKeyword"]."%' or Email LIKE '%".$_GET["txtKeyword"]."%')";
$result = mysql_db_query($dbname,$sql);
$NRow = mysql_num_rows($result);


// แสดงผลของรายการทั้งหมด
$sql1 = "select * from $tblname WHERE (gender LIKE '%$gender_a%' or age LIKE '%$age_a%' or province LIKE '%$province_a%' or age LIKE '%$photo_a%')";
$result1 = mysql_db_query($dbname,$sql1);
$NRow1 = mysql_num_rows($result1);

ไม่รู้ว่าผมเขียนถูกป่าวครับ ช่วยผมดูหน่อยครับ

 Lips Sealed
บันทึกการเข้า

aum_mix
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 47
ออฟไลน์ ออฟไลน์

กระทู้: 1,153



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 06 มกราคม 2011, 03:41:40 »

แล้วมันมีปัญหาอะไรอะครับ ?
บันทึกการเข้า

ขายที่ดิน 31 ไร่ อยู่ ที่ดินสวย ทำเลดีติดถนน เหมาะแก่การลงทุนเป็นอย่างยิ่ง ที่ดินทำเลดี และที่ดิน 2,000 ไร่ จังหวัดกาญจนบุรี ที่ดินราคาดี
morizaki
ก๊วนเสียว
*

พลังน้ำใจ: 45
ออฟไลน์ ออฟไลน์

กระทู้: 499



ดูรายละเอียด
« ตอบ #2 เมื่อ: 06 มกราคม 2011, 05:17:42 »

ไม่รู้จะช่วยดูอะไร บอกปัญหาหน่อยครับ เดี๋ยวคนอื่นพากันงงหมด Tongue
บันทึกการเข้า
thai2ads
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 136
ออฟไลน์ ออฟไลน์

กระทู้: 1,172



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 06 มกราคม 2011, 08:50:00 »

 Tongue อยากช่วยแต่ไม่รู้ปัญหา ถ้าถามว่าเขียนถูกไหม คงตอบได้ว่า เขียนถูกครับรูปแบบตัวแปรและคำสั่งต่างๆนะครับ
run ดูแล้ว มันได้ตามที่ต้องการหรือเปล่าละ แล้วสคริปตัวนี้ความต้องการมันคืออะไรครับ เพื่อจะได้ช่วยได้นิดๆหน่อยๆครับเพราะผมเองก็ งูๆปลาๆ wanwan019
บันทึกการเข้า

รับทำเว็บไซต์ เขียนระบบต่างๆตามที่ต้องการ (ยกเว้น 18+ กับการพนัน) ระบบมีปัญหาการใช้งานแจ้งพจได้เลยนะครับอย่าได้เกรงใจเพราะเดี๋ยวมันจะไม่รู้ปัญหา
ออกแบบเว็บไซต์ | รับทำเว็บไซต์ |
Joejoe
Newbie
*

พลังน้ำใจ: 3
ออฟไลน์ ออฟไลน์

กระทู้: 37



ดูรายละเอียด
« ตอบ #4 เมื่อ: 06 มกราคม 2011, 12:01:06 »

ผิดครับ  ถึง run ออก ก็ได้ผลลัพธ์ไม่ตรงวัตถุประสงค์อย่างแน่นอนครับ

ตัวอย่างเช่นคุณ wornnoncook ต้องการหาอายุโดยการส่งค่ามาเป็น a1 ( ตาม URL คือ "tb_age=a1" )

$age = $_GET['tb_age']; <-- ก็คือ a1

เมื่อมาเปรียบเทียบใน if ก็จะได้ $age_a = "AND age < 18 "; ดูให้ดีนะครับ ตัวแปร $age_a ตอนนี้ของคุณเก็บเป็น string ไปแล้วเมื่อถูกไปแทนค่าใน SQL ของคุณก็จะได้

select * from $table WHERE age LIKE '%AND age < 18%'; ( ตัวนี้ผมตัดมาจาก SQL ของคุณ wornnoncook ให้ดูเป็นตัวอย่างนะครับจะได้เห็นภาพได้ชัด )

สังเกตุว่า SQL จะเปรีบเทียบค้นหา field "age" ของคุณว่า มีคำว่า "AND age < 18" อยู่ใน field "age" ของคุณหรือไม่ แน่นอนว่าต้องไม่มีแน่เพราะความเป็นจริง field "age" ของคุณต้องถูกเก็บมาเป็นตัวเลขตั้งแต่ต้น  แต่นี้ SQL ดันไปค้นหาและเปรียบเทียบเป็นแบบ string ไปแล้วครับ ดังนั้นถ้า SQL ทำงานได้ ผลลัพธ์ที่ได้ออกมาก็เป็น 0 อยู่ดี








บันทึกการเข้า
ttong
สมุนแก๊งเสียว
*

พลังน้ำใจ: 33
ออฟไลน์ ออฟไลน์

กระทู้: 633



ดูรายละเอียด
« ตอบ #5 เมื่อ: 06 มกราคม 2011, 12:06:03 »

บอกถึงปัญหาที่เจอ จะแก้ไขได้ถูกจุด และเร็วกว่านะครับ 
บันทึกการเข้า

วอนนอนคุก
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 117
ออฟไลน์ ออฟไลน์

กระทู้: 522



ดูรายละเอียด เว็บไซต์
« ตอบ #6 เมื่อ: 06 มกราคม 2011, 12:17:13 »

คือว่ามันค้นหาไม่ได้ครับ

หรือใครพอมีโค้ดการค้นจาก select ผมขอหน่อยครับ

พดดีผมจะทำหน้านี้ครับ

http://playbb.in.th/showpin.php

ยังไม่ได้สักที่  Lips Sealed

ขอบคุณครับ
บันทึกการเข้า

วอนนอนคุก
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 117
ออฟไลน์ ออฟไลน์

กระทู้: 522



ดูรายละเอียด เว็บไซต์
« ตอบ #7 เมื่อ: 06 มกราคม 2011, 12:28:08 »

โค๊ด:
<?

include "form_search1.php";
require_once ("config.inc.php");

// รับค่าตัวแปล
$gender = $_GET['gender'];
$age = $_GET['age'];
$province = $_GET['province'];
$photo = $_GET['photo'];

// รับค่าตัวแปล ทำลิงค์ แบ่งหน้า
$link_page =  "&gender=$gender&age=$age&province=$province&photo=$photo";

if (empty($page)){
$page=1;
}

// กำหนดตัวแปล
// ( 1 ) เพศ
if ($gender=="0") {
$gender_key = "";
}
else {
$gender_key = "$gender";
};

// ( 2 ) อายุ
if ($age=="0") {
$age_key = "";
}
elseif ($age=="1") {
$age_key = "AND age < 18 ";
}
elseif ($age=="2") {
$age_key = "AND age between 18 and 20 ";
}
elseif ($age=="3") {
$age_key = "AND age between 21 and 30 ";
}
elseif ($age=="4") {
$age_key = "AND age between 31 and 40 ";
}
elseif ($age=="5") {
$age_key = "AND age > 41 ";
}
else {};

// ( 3 ) จังหวัด
if ($province=="0") {
$province_key = "";
}
else {
$province_key = "$province";
};

// ( 4 ) Picture
if ($photo == "1") {
$photo_key = "AND picture !='0'";
}
else {
$photo_key = "";
};


// ติดต่อ database เพื่ออ่านข้อมูล

// หาจำนวนหน้าทั้งหมด
mysql_connect($dbhost ,$dbuname,$dbpass);
mysql_db_query($dbname,"SET NAMES utf8");

//$sql = "select * from $tblname WHERE $pro $msn $icq $yahoo $qq sex LIKE '%$sex_a%' $age_a AND province LIKE '%$province_a%' AND cam LIKE '%$cam_a%' AND mic LIKE '%$mic_a%' $pic_a";
//$sql = "SELECT * FROM $tblname WHERE gender LIKE '%$gender_a%' $age_a AND province LIKE '%$province_a%' AND $photo_a";
$sql = "SELECT * FROM $tblname WHERE gender LIKE '%$gender_key%' OR age LIKE '%$age_key%' OR province LIKE '%$province_key%' OR photo LIKE '%$photo_key%' ;";
$result = mysql_db_query($dbname,$sql);
$NRow = mysql_num_rows($result);

// แบ่งหน้าแสดง
$per_page=$list_page;
if (!$page) {
$page = 1;
}
$prev_page = $page - 1;
$next_page = $page + 1;
$page_start = ($per_page * $page) - $per_page;
$result = mysql_db_query($dbname,$sql);
$num_rows = $NRow ;
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;

if (($page > $num_pages) || ($page< 0)) {
error("You have specified an invalid page number");
}


// แสดงผลของรายการทั้งหมด
$sql1 = "SELECT * FROM $tblname WHERE gender LIKE '%$gender_key%' OR age LIKE '%$age_key%' OR province LIKE '%$province_key%' OR photo LIKE '%$photo_key%' order by id DESC LIMIT $page_start, $per_page";
$result1 = mysql_db_query($dbname,$sql1);
$NRow1 = mysql_num_rows($result1);

if($NRow1==0) {
echo "<center>";
echo "<br><br>";
echo "<font size=2 face='MS Sans Serif'>ยังไม่มีข้อมูล</font><br><br><br>\n";
echo "<center>";
}

// แสดงข้อมูล
else {

echo "<table width=\"720\" cellpadding=\"2\" cellspacing=\"0\" align=\"center\">";
echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"2\" width=\"100%\">
  <tbody>
    <tr align=\"center\" bgcolor=\"#4e4e4e\">
      <td class=\"pp_content\" width=\"163\" height=\"28\"><h6>Name</h6></td>
      <td class=\"pp_content\" width=\"269\"><h6>PIN. BB (Blackberry)</h6></td>
      <td class=\"pp_content\" width=\"522\"><h6>Message</h6></td>
      <td class=\"pp_content\" width=\"40\"><h6>Age</h6></td>
      <td class=\"pp_content\" width=\"64\"><h6>Gender</h6></td>
      <td class=\"pp_content\" width=\"142\"><h6>Province</h6></td>
    </tr>";

$i=0;
while( $arr = mysql_fetch_row( $result1 ) )
{
 // กำหนดสีของตาราง
//$bgc = ($bgc==$rowColor1) ? $rowColor2 : $rowColor1;
if ($arr[4]=="0") {
$bgc = "#ffffff";
}
elseif ($arr[4]=="M") {
$bgc = "#feffc6";
}
elseif ($arr[4]=="F") {
$bgc = "#ffebe1";
}
elseif ($arr[4]=="G") {
$bgc = "#fae8fb";
}
elseif ($arr[4]=="L") {
$bgc = "#f3f3f3";
}
else {};

// กำหนดตัวแปล
// For Admin Delete
if ($admin_uid=$auid && $admin_pwd=$apwd) {
$del = "<a href=delete.php?id=$arr[0]><img src=img/delete.gif border=0 alt=ลบ></a>";
}
else {};

// เพศ
if ($arr[4]=="0") {
$sex = "ไม่ระบุ";
}
elseif ($arr[4]=="M") {
$sex = "ชาย";
}
elseif ($arr[4]=="F") {
$sex = "หญิง";
}
elseif ($arr[4]=="G") {
$sex = "เกย์";
}
elseif ($arr[4]=="L") {
$sex = "ทอม-ดี้";
}
else {};

echo "<tr align=\"center\" bgcolor=$bgc>
      <td align=\"center\" height=\"28\">$arr[1]</td>
      <td align=\"left\" height=\"28\"><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"269\">
        <tbody>
          <tr>
            <td width=\"40\" height=\"40\"><table bgcolor=\"#ffdfbf\" border=\"0\" cellpadding=\"0\" cellspacing=\"1\" width=\"40\">
              <tbody>
                <tr>
                  <td align=\"center\" background=\"style_images/nolink.gif\" valign=\"middle\" height=\"40\"><img width=\"40\" height=\"40\" src=photo/$arr[8]></td>
                </tr>
              </tbody>
            </table></td>
            <td width=\"5\"></td>
            <td width=\"213\"><font size=\"2\" face=\"Tahoma\">PIN.BB - $arr[2]</font></td>
          </tr>
        </tbody>
      </table></td>
      <td align=\"left\">$arr[7]</td>
      <td><font size=\"2\" face=\"Tahoma\">$arr[5]</font></td>
      <td><font size=\"2\" face=\"Tahoma\">$sex</font></td>
      <td><font size=\"2\" face=\"Tahoma\">$arr[6]</font></td>
    </tr>";

$i++;

}
}

// ปิดการติดต่อฐานข้อมูล
mysql_close();

?>
<?

// แสดงหน้า link ไปยังหน้าอื่นๆ
echo "<tr align=\"center\" bgcolor=\"#f2f9ff\">";
echo "<td colspan=\"6\" align=\"center\" height=\"28\">";
for ($i = 1; $i<= $num_pages; $i++) {
if ($i != $page) {
echo " | <a href=showpin.php?page=$i>$i</a>"; } else { echo " | <B><font color=red>$i</font></B>"; }
 };
echo "</td></tr></tbody></table>";

// จบการแบ่งหน้า
?>

อันนี้เป็นโค้ดเต็มๆนะครับ
บันทึกการเข้า

dragonmath
คนรักเสียว
*

พลังน้ำใจ: 97
ออฟไลน์ ออฟไลน์

กระทู้: 168



ดูรายละเอียด เว็บไซต์
« ตอบ #8 เมื่อ: 06 มกราคม 2011, 12:32:56 »

1. ลอง echo ตัวแปรที่รับออกมาก่อนว่ามันรับได้มั้ย
2.ลองเช็คอักขระดูครับว่าใน file .php กับ ใน ดาต้าเบสเหมือนกันมั้ย แนะนำให้ตั้งเป็น utf-8 (ใน db เป็น utf8_general_ci )ทั้งคู่เลยครับ
« แก้ไขครั้งสุดท้าย: 06 มกราคม 2011, 12:34:27 โดย dragonmath » บันทึกการเข้า

วอนนอนคุก
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 117
ออฟไลน์ ออฟไลน์

กระทู้: 522



ดูรายละเอียด เว็บไซต์
« ตอบ #9 เมื่อ: 06 มกราคม 2011, 12:39:12 »

ครับผมเด๋วจะลองดูใหม่นะครับ
บันทึกการเข้า

navico
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 108
ออฟไลน์ ออฟไลน์

กระทู้: 2,315



ดูรายละเอียด เว็บไซต์
« ตอบ #10 เมื่อ: 06 มกราคม 2011, 12:41:13 »

echo $sql; ออกมาดูด้วยครับ
บันทึกการเข้า
Joejoe
Newbie
*

พลังน้ำใจ: 3
ออฟไลน์ ออฟไลน์

กระทู้: 37



ดูรายละเอียด
« ตอบ #11 เมื่อ: 06 มกราคม 2011, 12:56:52 »

            // รับค่าตัวแปล
          $gender = $_GET['gender'];
          $age = $_GET['age'];
          $province = $_GET['province'];
          $photo = $_GET['photo'];
      
          $page = (!isset($_GET['page']))? 1 : $_GET['page'];
         
          $condition = ' (id <> 0) ';
         
          // ( 2 ) เพศ
          if ($gender > '0') {
              $condition .= " AND (gender = '{$gender}') ";
          }
         
          switch($age)
          {
              case 'a1':
                  $condition .= " AND (age < 18) ";
                  break;
              case 'a2':
                  $condition .= " AND ( age between 18 and 20 ) ";
                  break;
              case 'a3':
                  $condition .= " AND ( age between 21 and 30 ) ";
                  break;
              case 'a4':
                  $condition .= " AND ( age between 31 and 40 ) ";
                  break;
              case 'a5':
                  $condition .= " AND ( age > 41 ) ";
                  break;
          }
      
         
          // ( 4 ) จังหวัด
          if ($province > 0) {
              $condition .= " AND (PROVINCE = '{$province}') ";
          }
      
          // ( 6 ) Picture
          if ($photo == "1") {
              $condition .= " AND (picture <> 0) ";
          }
      
          mysql_connect($dbhost, $dbuname, $dbpass);
          $total = 0;
          $sql = "SELECT * from {$tblname} {$condition} ";
          // แนะนำ SQL SELECT เพื่อนับจำนวนแถวที่ได้ทั้งหมด แนะนำให้ใส่ field ที่เป็น pimary key ลงไปแค่ตัวเดียวนะครับ จะได้ query ได้เร็ว
          $result = mysql_db_query($dbname, $sql);
            $total = mysql_num_rows($result);
           
            $perpage = 20;
            $offset = ($page-1)*$perpage;
          // เลือกข้อมูลที่จะแสดงจาก field ต่างๆ จาก query นี้เลยครับ ไม่แนะนำให้ใช้ *
          $sql = "SELECT * from {$tblname} {$condition} LIMIT {$perpage} OFFSET {$offset} ";
          $result = mysql_db_query($dbname, $sql);



ลองดูก่อนนะครับ  ผมเขียนสดๆ ยังไม่ได้ ไปลอง run ดู
บันทึกการเข้า
วอนนอนคุก
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 117
ออฟไลน์ ออฟไลน์

กระทู้: 522



ดูรายละเอียด เว็บไซต์
« ตอบ #12 เมื่อ: 06 มกราคม 2011, 12:58:15 »

            // รับค่าตัวแปล
          $gender = $_GET['gender'];
          $age = $_GET['age'];
          $province = $_GET['province'];
          $photo = $_GET['photo'];
      
          $page = (!isset($_GET['page']))? 1 : $_GET['page'];
         
          $condition = ' (id <> 0) ';
         
          // ( 2 ) เพศ
          if ($gender > '0') {
              $condition .= " AND (gender = '{$gender}') ";
          }
         
          switch($age)
          {
              case 'a1':
                  $condition .= " AND (age < 18) ";
                  break;
              case 'a2':
                  $condition .= " AND ( age between 18 and 20 ) ";
                  break;
              case 'a3':
                  $condition .= " AND ( age between 21 and 30 ) ";
                  break;
              case 'a4':
                  $condition .= " AND ( age between 31 and 40 ) ";
                  break;
              case 'a5':
                  $condition .= " AND ( age > 41 ) ";
                  break;
          }
      
         
          // ( 4 ) จังหวัด
          if ($province > 0) {
              $condition .= " AND (PROVINCE = '{$province}') ";
          }
      
          // ( 6 ) Picture
          if ($photo == "1") {
              $condition .= " AND (picture <> 0) ";
          }
      
          mysql_connect($dbhost, $dbuname, $dbpass);
          $total = 0;
          $sql = "SELECT * from {$tblname} {$condition} ";
          // แนะนำ SQL SELECT เพื่อนับจำนวนแถวที่ได้ทั้งหมด แนะนำให้ใส่ field ที่เป็น pimary key ลงไปแค่ตัวเดียวนะครับ จะได้ query ได้เร็ว
          $result = mysql_db_query($dbname, $sql);
            $total = mysql_num_rows($result);
           
            $perpage = 20;
            $offset = ($page-1)*$perpage;
          // เลือกข้อมูลที่จะแสดงจาก field ต่างๆ จาก query นี้เลยครับ ไม่แนะนำให้ใช้ *
          $sql = "SELECT * from {$tblname} {$condition} LIMIT {$perpage} OFFSET {$offset} ";
          $result = mysql_db_query($dbname, $sql);



ลองดูก่อนนะครับ  ผมเขียนสดๆ ยังไม่ได้ ไปลอง run ดู

เด๋วจะลองดูนะครับ
บันทึกการเข้า

gunhotnews
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 53
ออฟไลน์ ออฟไลน์

กระทู้: 1,187



ดูรายละเอียด เว็บไซต์
« ตอบ #13 เมื่อ: 06 มกราคม 2011, 13:04:46 »

- -ดันออิิอ
บันทึกการเข้า

วอนนอนคุก
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 117
ออฟไลน์ ออฟไลน์

กระทู้: 522



ดูรายละเอียด เว็บไซต์
« ตอบ #14 เมื่อ: 06 มกราคม 2011, 13:29:18 »

            // รับค่าตัวแปล
          $gender = $_GET['gender'];
          $age = $_GET['age'];
          $province = $_GET['province'];
          $photo = $_GET['photo'];
      
          $page = (!isset($_GET['page']))? 1 : $_GET['page'];
         
          $condition = ' (id <> 0) ';
         
          // ( 2 ) เพศ
          if ($gender > '0') {
              $condition .= " AND (gender = '{$gender}') ";
          }
         
          switch($age)
          {
              case 'a1':
                  $condition .= " AND (age < 18) ";
                  break;
              case 'a2':
                  $condition .= " AND ( age between 18 and 20 ) ";
                  break;
              case 'a3':
                  $condition .= " AND ( age between 21 and 30 ) ";
                  break;
              case 'a4':
                  $condition .= " AND ( age between 31 and 40 ) ";
                  break;
              case 'a5':
                  $condition .= " AND ( age > 41 ) ";
                  break;
          }
      
         
          // ( 4 ) จังหวัด
          if ($province > 0) {
              $condition .= " AND (PROVINCE = '{$province}') ";
          }
      
          // ( 6 ) Picture
          if ($photo == "1") {
              $condition .= " AND (picture <> 0) ";
          }
      
          mysql_connect($dbhost, $dbuname, $dbpass);
          $total = 0;
          $sql = "SELECT * from {$tblname} {$condition} ";
          // แนะนำ SQL SELECT เพื่อนับจำนวนแถวที่ได้ทั้งหมด แนะนำให้ใส่ field ที่เป็น pimary key ลงไปแค่ตัวเดียวนะครับ จะได้ query ได้เร็ว
          $result = mysql_db_query($dbname, $sql);
            $total = mysql_num_rows($result);
           
            $perpage = 20;
            $offset = ($page-1)*$perpage;
          // เลือกข้อมูลที่จะแสดงจาก field ต่างๆ จาก query นี้เลยครับ ไม่แนะนำให้ใช้ *
          $sql = "SELECT * from {$tblname} {$condition} LIMIT {$perpage} OFFSET {$offset} ";
          $result = mysql_db_query($dbname, $sql);



ลองดูก่อนนะครับ  ผมเขียนสดๆ ยังไม่ได้ ไปลอง run ดู

ไม่ได้ครับผม  wanwan008 แต่ขอขอบคุณนะครับ
บันทึกการเข้า

Joejoe
Newbie
*

พลังน้ำใจ: 3
ออฟไลน์ ออฟไลน์

กระทู้: 37



ดูรายละเอียด
« ตอบ #15 เมื่อ: 07 มกราคม 2011, 10:16:24 »

คุณลองปรับเปลี่ยน ตัวแปรให้เข้ากับ attribute ของคุณหรือยังครับ หรือแม้กระทั้ง parameter ที่คุณส่งมา

อย่างเช่น

$condition = ' (id <> 0) ';

id นี้ให้เป็น attribute primary ของคุณนะครับ เพราะผมไม่แน่ใจว่าคุณมี attribute นี้อยู่หรือป่าว
« แก้ไขครั้งสุดท้าย: 07 มกราคม 2011, 10:17:39 โดย Joejoe » บันทึกการเข้า
วอนนอนคุก
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 117
ออฟไลน์ ออฟไลน์

กระทู้: 522



ดูรายละเอียด เว็บไซต์
« ตอบ #16 เมื่อ: 07 มกราคม 2011, 13:02:20 »

คุณลองปรับเปลี่ยน ตัวแปรให้เข้ากับ attribute ของคุณหรือยังครับ หรือแม้กระทั้ง parameter ที่คุณส่งมา

อย่างเช่น

$condition = ' (id <> 0) ';

id นี้ให้เป็น attribute primary ของคุณนะครับ เพราะผมไม่แน่ใจว่าคุณมี attribute นี้อยู่หรือป่าว

attribute primary คืออะไรหรอครับ

ผมไม่รู้เรื่องจริงๆครับ wanwan008

ขอความรู้อีกหน่อยครับ  wanwan031

แต่ผมลองเอาโค้ดของคุนมาแปลงแล้ว

จะค้นหาได้แต่อายุ ครับผม

^^  wanwan017
บันทึกการเข้า

Joejoe
Newbie
*

พลังน้ำใจ: 3
ออฟไลน์ ออฟไลน์

กระทู้: 37



ดูรายละเอียด
« ตอบ #17 เมื่อ: 12 มกราคม 2011, 13:46:07 »

ขอโทษทีครับที่มาช้า


ผมตอบไปทาง pm แล้วนะครับ มีอะไรสอบถามได้ครับยินดีครับ
บันทึกการเข้า
XXL
ก๊วนเสียว
*

พลังน้ำใจ: 64
ออฟไลน์ ออฟไลน์

กระทู้: 467



ดูรายละเอียด
« ตอบ #18 เมื่อ: 13 มกราคม 2011, 14:22:07 »

อยู่ที่ $sql =  ".........
ลอง ตรวจสอบ ดูดีๆ  wanwan020

บันทึกการเข้า

รถไฟวิ่ง ฉึกฉัก... . . . . ...ถึงก็ช่าง..ไม่ถึงก็ช่าง..
วอนนอนคุก
Verified Seller
สมุนแก๊งเสียว
*

พลังน้ำใจ: 117
ออฟไลน์ ออฟไลน์

กระทู้: 522



ดูรายละเอียด เว็บไซต์
« ตอบ #19 เมื่อ: 13 มกราคม 2011, 14:38:36 »

ทำได้แล้วครับ  wanwan019  wanwan003
บันทึกการเข้า

หน้า: [1]   ขึ้นบน
พิมพ์