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 > สอบถามค้นหาหลายเงื่อนไขครับตอนนี้ผมขาดแค่ค้นหาข้อมูลจาก 3 ช่อง


[PHP] สอบถามค้นหาหลายเงื่อนไขครับตอนนี้ผมขาดแค่ค้นหาข้อมูลจาก 3 ช่อง

 
Topic : 133841



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



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


Code (PHP)
001.<form id="form1" name="form1" method="get">
002.<fieldset class="field_bar" >
003.  <input type="hidden" name="s" id="s" value="search">
004.    <label for="member_code">ค้นหา :</label>
005.    <select name="tbSelect" id="tbSelect">
006.                            <option value="member_address" selected <option value="member_address" <?php if(@addslashes($_GET["tbSelect"]) == "member_address") {echo 'selected';}?>> วินจักรยานยนต์</option>
007.                             
008.                            <option value="member_name"  <?php if(@addslashes($_GET["tbSelect"]) == "member_name") {echo 'selected';}?>> ชื่อ</option>
009.                             
010.                            <option value="member_lastname" <?php if(@addslashes($_GET["tbSelect"]) == "member_lastname") {echo 'selected';}?>> นามสกุล</option>
011.                             
012.  </select>
013.<input name="txtKey" type="text" autofocus class="aqua_textfield12" id="txtKey" placeholder="พิมพ์เพื่อค้นหา แล้วกด Enter" style="" autocomplete="off" value="<?php echo @addslashes($_GET['txtKey']);?>">
014.    <input type="submit" name="show_data" class="button green" value="ค้นหา"><br>
015.    <select name="tbSelect2" id="tbSelect2">
016.                            <option value="member_district" selected <option value="member_district" <?php if(@addslashes($_GET["tbSelect"]) == "member_district") {echo 'selected';}?>>หมายเลขเสื้อ</option>
017.  </select>
018.  
019.     <input type="text" name="member_number"  class="aqua_textfield10" id="member_number" placeholder="กรอกเบอร์เสื้อ" value="<?php echo @addslashes($_GET['member_number']);?>">
020. 
021.  &nbsp;<input name="licence1" type="text" class="aqua_textfield10" id="licence1" placeholder="หมวดอักษร" value="<?php echo @addslashes($_GET['licence1']);?>">
022.  <input type="text" name="licence2"  class="aqua_textfield10" id="licence2" placeholder="ตัวเลข" value="<?php echo @addslashes($_GET['licence2']);?>"> <select name="licence3" id="licence3" value="<?php echo @addslashes($_GET['licence3']);?>>
023.        <?php
024.        $licence_c = array("","กรุงเทพมหานคร","กระบี่","กาญจนบุรี","กาฬสินธุ์","ขอนแก่น","จันทบุรี","ฉะเชิงเทรา","ชลบุรี","ชัยนาท","ชัยภูมิ","ชุมพร","เชียงราย","เชียงใหม่","ตรัง","ตราด","ตาก","นครนายก","นครปฐม","นครพนม","นครราชสีมา","นครสวรรค์","นนทบุรี","นราธิวาส","น่าน","บึงกาฬ","บุรีรัมย์","ปทุมธานี","ประจวบคีรีขันธ์","ปราจีนบุรี","ปัตตานี","พระนครศรีอยุธยา","พังงา","พัทลุง","พิจิตร","พิษณุโลก","เพชรบุรี","เพชรบูรณ์","แพร่","พะเยา","ภูเก็ต","มหาสารคาม","มุกดาหาร","แม่ฮ่องสอน","ยะลา","ยโสธร","ร้อยเอ็ด","ระนอง","ระยอง","ราชบุรี","ลพบุรี","ลำปาง","ลำพูน","เลย","ศรีสะเกษ","สกลนคร","สงขลา","สตูล","สมุทรปราการ","สมุทรสงคราม","สมุทรสาคร","สระแก้ว","สระบุรี","สิงห์บุรี","สุโขทัย","สุพรรณบุรี","สุราษฎร์ธานี","สุรินทร์","หนองคาย","หนองบัวลำภู","อ่างทอง","อุดรธานี","อุทัยธานี","อุตรดิตถ์","อุบลราชธานี","อำนาจเจริญ");
025.        for($x=0;$x<76;$x++){
026.            if($_GET["licence3"] == $licence_c[$x]){
027.                echo '<option value="'.$licence_c[$x].'" selected>'.$licence_c[$x].'</option>';
028.            }else{
029.                echo '<option value="'.$licence_c[$x].'">'.$licence_c[$x].'</option>';
030.            }
031.        }
032.        ?>
033.       
034.      </select>
035.  </fieldset>
036.  <?php
037.      if(@addslashes($_GET['show_data'])){
038.      ?>
039.  <link rel="stylesheet" type="text/css" href="css/style2.css" />
040.  <div class="field_invisible">
041.  <table width="100%" border="0">
042.    <tr class="aqua_treatment_text_header">
043.    <td width="5%">รูปถ่าย</td>
044.    <td width="15%">ชื่อ-สกุล</td>
045.    <td width="7%">เลขที่ใบอนุญาต</td>
046.    <td width="7%" align="center">ใบอนุญาต<br>
047.      สิ้นอายุ</td>
048.    <td width="8%">เขต / อำเภอ</td>
049.    <td width="25%" align="center">วินจักรยานยนต์</td>
050.    <td width="5%">เบอร์เสื้อ</td>
051.    <td width="7%" align="center">ทะเบียน</td>
052.    <td width="5%">สิ้นอายุภาษี</td>
053.    </tr>
054.    <?PHP
055.$page   = empty($_GET['page']) ?    1 : $_GET['page'];
056.$search = ! empty($_GET['member_code']) ? htmlspecialchars($_GET['member_code']) : NULL;     
057.//        แสดงข้อมูลก่อนการค้นหา
058.$query  = " SELECT * FROM member where member_st='สมาชิก'
059.        "; //คำสั่ง SQL
060.         $query.= ( (addslashes($_GET["tbSelect2"]) !="") && (addslashes($_GET["member_number"]) !="") && (addslashes($_GET["member_number"]) !="") ) ? " AND (" . $_GET["tbSelect2"] . " LIKE '" . $_GET["member_number"] . "') " : "";     
061.         $query.= ( (addslashes($_GET["tbSelect"]) !="") && (addslashes($_GET["txtKey"]) !="") && (addslashes($_GET["txtKey"]) !="") ) ? " AND (" . $_GET["tbSelect"] . " LIKE '%" . $_GET["txtKey"] . "%') " : "";
062.          $objQuery = mysql_query($query) or die("ไม่สามารถค้นหาได้ [" . $query . ']<br>['.mysql_error().'] ');
063.//        กำหนดเงื่อนไขในการค้นหา โดยให้เลือกฟิลด์ที่กำหนด
064. 
065.$sql    = mysql_query($query);
066.$total_records = mysql_num_rows($sql); //นับจำจำนวน record
067.$scroll_page = 5; //จำนวนแบ่งหน้าที่จะให้แสดง คือ <ก่อนหน้า , 1 , 2 , 3 , ต่อไป>
068.$per_page = 25;
069.$current_page = $page; //รับค่าเพจ
070.$pager_url = '?p=members_ok&tbSelect='.$_GET["tbSelect"].'&txtKey='.$_GET["txtKey"].'&page='; //URL ตามตัวครับ
071.$inactive_page_tag = 'id="current_page"'; //ตำแหน่งหน้าปัจจุบัน
072.$previous_page_text = '&lt; ย้อนกลับ'; //ปุ่มย้อนกลับ
073.$next_page_text = 'ถัดไป &gt;'; //ปุ่มถัดไป
074.$first_page_text = '&lt;&lt; หน้าแรก'; //ปุ่มหน้าแรก
075.$last_page_text = 'หน้าสุดท้าย &gt;&gt;'; //ปุ่มหน้าสุดท้าย
076.$kgPagerOBJ = new kgPager(); #เรียกใช้งาน class
077.$kgPagerOBJ -> pager_set($pager_url, $total_records, $scroll_page, $per_page, $current_page, $inactive_page_tag, $previous_page_text, $next_page_text, $first_page_text, $last_page_text, $pager_url_last);   
078.$sql = mysql_query($query." ORDER BY member_address LIMIT ".$kgPagerOBJ -> start.", ".$kgPagerOBJ -> per_page."");
079.#------ตัวแบ่งหน้า คือ <ก่อนหน้า , 1 , 2 , 3 , ต่อไป> จะเอาไปแปะตรงไหนก็ได้ในหน้าเพจ----#
080.echo '<p id="pager_links">';
081.echo $kgPagerOBJ -> first_page;
082.echo $kgPagerOBJ -> previous_page;
083.echo $kgPagerOBJ -> page_links;
084.echo $kgPagerOBJ -> next_page;
085.echo $kgPagerOBJ -> last_page;
086.#-------------ส่วนแสดงผลจำนวน record ทั้งหมด--------------#
087. if($kgPagerOBJ -> total_records == 0){
088.    $display_alert = '<div class="alert_box red"><img src="media/icons/set/white/alert2.png" width="32" height="32">ไม่พบข้อมูล! หรือ "ไม่ได้เป็นผู้ขับขี่สมาชิกจักรยานยนต์สาธารณะ"</div>';
089.}
090.echo @$display_alert;
091.echo '<strong>&nbsp;จำนวนแถว :&nbsp;</strong>';
092.echo $kgPagerOBJ -> total_records; echo '<strong>&nbsp;แถว</strong>';
093.echo '&nbsp;&nbsp;<strong>จำนวน :&nbsp;</strong>';
094.echo $kgPagerOBJ -> total_pages; echo '<strong>&nbsp;หน้า</strong>';
095.#-------------จบส่วนแสดงผลจำนวน record ทั้งหมด--------------#    
096.while ($read = mysql_fetch_assoc($sql)) {
097.    #-------------ส่วนแสดงผล--------------#
098.    if($read['member_status'] != 1){
099.          $bg = 'bgcolor="#CCCCCC"';
100.      }else{
101.          $bg = 'bgcolor="#8DC2FF"';
102.      }
103.    ?>
104.    <tr class="aqua_treatment_text" id="<?php echo $read['member_key']?>">
105.    <td align="center" <?php echo @$bg;?>><img src="resource/members/images/<?php echo $read['member_photo']?>" width="50"  alt="" id="photo_border"/></td>
106.    <td <?php echo @$bg;?>>&nbsp;<?php echo $read['member_prefix'].$read['member_name']."&nbsp;&nbsp;".$read['member_lastname'];?></td>
107.        <td align="center" <?php echo @$bg;?>><?php echo $read['member_numcard']?></td>
108.        <td align="center" <?php echo @$bg;?>><?php echo @dateTimeConvertoredit($read['member_numcard_end'])?></td>
109.        <td align="center" <?php echo @$bg;?>><?php echo $read['member_subdistrict'];?></td>
110.        <td align="center" <?php echo @$bg;?>>&nbsp;<?php echo $read['member_address'];?></td>
111.        <td align="center" <?php echo @$bg;?>>&nbsp;<?php echo $read['member_district'];?></td>
112.        <td align="center" <?php echo @$bg;?>><?php echo $read['member_licence_a'].$read['member_licence_b']."&nbsp;<br>".$read['member_licence_c']?></td>
113.    <td align="center" <?php echo @$bg;?>><?php echo @dateTimeConvertoredit($read['date_licence'])?></td>
114.  </tr>
115.  <?php
116.  }
117.  ?>
118.</table>
119.  <?php
120.#------ตัวแบ่งหน้า คือ <ก่อนหน้า , 1 , 2 , 3 , ต่อไป> จะเอาไปแปะตรงไหนก็ได้ในหน้าเพจ----#
121.echo '<p id="pager_links">';
122.echo $kgPagerOBJ -> first_page;
123.echo $kgPagerOBJ -> previous_page;
124.echo $kgPagerOBJ -> page_links;
125.echo $kgPagerOBJ -> next_page;
126.echo $kgPagerOBJ -> last_page;
127.#-------------ส่วนแสดงผลจำนวน record ทั้งหมด--------------#
128.echo '<strong>&nbsp;จำนวนแถว :&nbsp;</strong>';
129.echo $kgPagerOBJ -> total_records; echo '<strong>&nbsp;แถว</strong>';
130.echo '&nbsp;&nbsp;<strong>จำนวน :&nbsp;</strong>';
131.echo $kgPagerOBJ -> total_pages; echo '<strong>&nbsp;หน้า</strong>';
132.#-------------จบส่วนแสดงผลจำนวน record ทั้งหมด--------------#
133.?>
134.     <?php
135.      }
136.      ?>


ค้าหาเงื่อนไข

ผมลงทำหลายรอบละครับพอได้ก็ค้นหาได้แค่ทะเบียนซะงั้น 3ช่องท้ายชื่อ licence1 licence2 licence3 ลองสร้างหลายรอบแล้วอันนี้หาได้แค่วินหรือชื่อหรือนามสกุล + เบอร์เสื้อ ขาด ทะเบียน3ช่องสุดท้ายครับ



Tag : PHP, Appserv

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2019-07-05 01:22:05 By : Error 404 View : 578 Reply : 5
 

 

No. 1



โพสกระทู้ ( 9,590 )
บทความ ( 2 )



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


วิเคราะห์ความต้องการก่อนว่า ทั้ง 3 condition นั้น ต้องการอย่างใดอย่างหนึ่งที่เหมือน หรือต้องเหมือน ทั้ง 3 เลย หรือ เป็นอย่างอื่น

ก็เลือกใช้ and หรือ or ตามความเหมาะสม และอย่าลืม วงเล็บครอบ condition ที่แตกต่างกัน ด้วย
ไม่ใช่ and and or โดยไม่มีวงเล็บเลย เดี๋ยวมันจะมาทั้งหมด หรือ ไม่มาทั้งหมดเอา
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-05 07:38:59 By : Chaidhanan
 

 

No. 2



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



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

ตอบความคิดเห็นที่ : 1 เขียนโดย : Chaidhanan เมื่อวันที่ 2019-07-05 07:38:59
รายละเอียดของการตอบ ::
ทั้ง 3 ต้องตรงกันเลย ผมใช้ AND แล้วผลคือมันหาได้แค่ทะเบียนที่เหลือจะหาไม่ออกครับผมเขียนในตอนเลือกข้อมูลเลย แล้วการเขียน query แยกออกมาอย่างไรครับ
Code ผมแทรกต่อท้ายในส่วนนี้ไปจะใช้ได้แค่ทะเบียน 3 ช่อง ที่เหลือค้นหาไม่ออกครับ (PHP)
1.$query  = " SELECT * FROM member where member_st='สมาชิก'
2.        "; //คำสั่ง SQL


Code ผมเพิ่มเงื่อไขไปใน $query (PHP)
1.$licence_a = $_GET['licence1'];
2.$licence_b = $_GET['licence2'];
3.$licence_c = $_GET['licence3'];
4.$query  = " SELECT * FROM member where member_st='สมาชิก'
5.        AND member_licence_a = '$licence_a'
6.        AND member_licence_b = '$licence_b'
7.        AND member_licence_c = '$licence_c'
8.        ";

หาได้แค่ทะเบียน

Code อันนี้ค้นหาสองช่องแรก แค่วินหรือชื่อหรือนามสกุล + เบอร์เสื้อ (PHP)
1.$query.= ( (addslashes($_GET["tbSelect2"]) !="") && (addslashes($_GET["member_number"]) !="") && (addslashes($_GET["member_number"]) !="") ) ? " AND (" . $_GET["tbSelect2"] . " LIKE '" . $_GET["member_number"] . "') " : "";
2.          
3.        $query.= ( (addslashes($_GET["tbSelect"]) !="") && (addslashes($_GET["txtKey"]) !="") && (addslashes($_GET["txtKey"]) !="") ) ? " AND (" . $_GET["tbSelect"] . " LIKE '%" . $_GET["txtKey"] . "%') " : "";
4.         $objQuery = mysql_query($query) or die("ไม่สามารถค้นหาได้ [" . $query . ']<br>['.mysql_error().'] ');

จะเขียนในลักษณะนี้แยกออกมาอย่างไรครับ รบกวนด้วยครับท่านอาจารย์



ประวัติการแก้ไข
2019-07-05 13:24:38
2019-07-05 13:33:58
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-05 13:23:14 By : Error 404
 

 

No. 3



โพสกระทู้ ( 9,590 )
บทความ ( 2 )



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


062
Code (PHP)
1.$objQuery = mysql_query($query) or die("ไม่สามารถค้นหาได้ [" . $query . ']<br>['.mysql_error().'] ');
2.//        กำหนดเงื่อนไขในการค้นหา โดยให้เลือกฟิลด์ที่กำหนด
3.echo '----<br>-----<br>'.$query;// เอา statement มาดูหน่อย
4.print_r( mysql_fetch_assoc($objQuery)); // เอาข้อมูลมาดูด้วย
5.exit;

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-05 13:57:21 By : Chaidhanan
 

 

No. 4



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



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

ตอบความคิดเห็นที่ : 3 เขียนโดย : Chaidhanan เมื่อวันที่ 2019-07-05 13:57:21
รายละเอียดของการตอบ ::
หาจากเสื้อไม่เจอเมื่อใช้
Code (PHP)
1.$licence_a = $_GET['licence1'];
2.$licence_b = $_GET['licence2'];
3.$licence_c = $_GET['licence3'];
4.$query  = " SELECT * FROM member where member_st='สมาชิก'
5.        AND member_licence_a = '$licence_a'
6.        AND member_licence_b = '$licence_b'
7.        AND member_licence_c = '$licence_c'
8.        ";

หาวิน+เสื้อไม่เจอ

หาจากทะเบียนเจอ
หาจากทะเบียนเจอ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-05 14:12:03 By : Error 404
 

 

No. 5



โพสกระทู้ ( 9,590 )
บทความ ( 2 )



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


ตรวจสอบ condition ให้ดี ต้องใช้ and หรือ or
หรือ ไม่ต้องมี condition เช่น ถ้าข้อมูลเป็นค่าว่าง ก็ไม่ต้องสร้าง condition
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-05 15:35:35 By : Chaidhanan
 

   

ค้นหาข้อมูล


   
 

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





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 อัตราราคา คลิกที่นี่