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 > รบกวนหน่อยนะครับ เรื่องการค้นหาแบบเลือกเงื่อนไขจาก List/Menu อะครับ ขอบคุณครับ



 

รบกวนหน่อยนะครับ เรื่องการค้นหาแบบเลือกเงื่อนไขจาก List/Menu อะครับ ขอบคุณครับ

 



Topic : 049264



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

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

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



รบกวนถามหน่อยนะครับ

https://www.thaicreate.com/tutorial/ajax-search-record-paging.html

อันนี้เป็นแบบค้นหาธรรมดาแบบ Ajax ถ้าเราจะเพิ่มเงื่อนไขให้เลือกแบบ List/Menu เราจะต้องเขียน อะไรเพิ่มอะครับ ขอบคุณนะครับ php ครับ

รูปตัวอย่าง




Tag : PHP, MySQL, JavaScript, Ajax







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-09-24 09:24:28 By : slurpee55555 View : 1308 Reply : 7
 

 

No. 1



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

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

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

Code (PHP)
var pmeters = "mySearch=" + Search +
						"&myPage=" + Page;


แก้ไขการส่งค่าตัวแปรเพิ่มเข้าไปครับ

และก็

Code (PHP)
$strSQL = "SELECT * FROM customer WHERE Name LIKE '%".$strSearch."%' ";







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-09-24 09:32:31 By : webmaster
 


 

No. 2



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

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

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

เขียนยังไงอะครับ ผมเขียน

<script language="JavaScript">
var HttPRequest = false;

function doCallAjax(Tag,Search,Page) {
HttPRequest = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
HttPRequest = new XMLHttpRequest();
if (HttPRequest.overrideMimeType) {
HttPRequest.overrideMimeType('text/html');
}
} else if (window.ActiveXObject) { // IE
try {
HttPRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
HttPRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}

if (!HttPRequest) {
alert('Cannot create XMLHTTP instance');
return false;
}

var url = 'save_serach.php';
var pmeters = 'myTag=' + Tag + '&mySearch=' + Search;

var pmeters = "myTag=" + Tag + "&mySearch=" + Search + "&myPage=" + Page;

HttPRequest.open('POST',url,true);

HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
HttPRequest.setRequestHeader("Content-length", pmeters.length);
HttPRequest.setRequestHeader("Connection", "close");
HttPRequest.send(pmeters);


HttPRequest.onreadystatechange = function()
{

if(HttPRequest.readyState == 3) // Loading Request
{
document.getElementById("mySpan").innerHTML = "กำลังค้นหา...";
}

if(HttPRequest.readyState == 4) // Return Request
{
document.getElementById("mySpan").innerHTML = HttPRequest.responseText;
}
}
}
</script>


ตรง body

<body Onload="JavaScript:doCallAjax('','','');">

ส่วนปุ่มกดค้นหา

ค้นหาจาก ::
<select name="Tag" id="Tag" style="width:100px; ">
<option value="Title">-- ชื่อเรื่อง --</option>
<option value="Subject">-- หัวเรื่อง --</option>
<option value="CallNumber">-- เลขเรียก --</option>
<option value="Author1">-- ผู้แต่ง --</option>
<option value="ISBN">-- ISBN --</option>
</select>
ข้อความที่ค้นหา
<input type="text" name="txtSearch" id="txtSearch">
<input type="button" name="btnSearch" id="btnSearch" value="ค้นหา" OnClick="JavaScript:doCallAjax(document.getElementById('Tag').value,('txtSearch').value,'1');">




ส่วนไฟล์ save_serach.php


<?php
if($_POST['myTag'] and $_POST['mySearch']){
$Tag = $_POST["myTag"];
$strSearch = $_POST["mySearch"];
$strPage = $_POST["myPage"];
$strSQL = "SELECT distinct Title,Author1,YearOfPrint,Call_author,Typebook FROM biblio WHERE $Tag LIKE '%".$strSearch."%' ";
$objQuery = mysql_query($strSQL);
$Num_Rows = mysql_num_rows($objQuery);

$Per_Page = 10; // Per Page

$Page = $strPage;
if(!$strPage)
{
$Page=1;
}

$Prev_Page = $Page-1;
$Next_Page = $Page+1;

$Page_Start = (($Per_Page*$Page)-$Per_Page);
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;
}

$strSQL .=" order by Number ASC LIMIT $Page_Start , $Per_Page";
$objQuery = mysql_query($strSQL);
?>

ไม่ทราบว่าเขียนถูกปะครับ (ลองแล้วไม่ได้อะครับ)

ขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-09-24 10:22:57 By : slurpee55555
 

 

No. 3



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

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

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

น่าจะถูกแล้วน่ะครับ ของ debug ค่าด้วยการ

echo $strSQL;ว่า Query มันตรงกับที่เราต้องการหรือไม่
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-09-24 10:28:33 By : webmaster
 


 

No. 4



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

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

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

ผมลอง

<? echo $Tag;?>
<? echo $strSearch;?>

ในไฟล์ save_serach.php

ค่าที่ได้คือ

Title
undefined

ค่าที่ได้ undefined มันคืออะไรอะครับ มันน่าจะออกมาเป็นข้อความที่เรากรอกไปใช่ปะครับ

ผลที่ออกมา มันไม่แสดงอะไรออกเลอะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-09-24 10:33:51 By : slurpee55555
 


 

No. 5



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

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

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

ลอง debug ทีล่ะ step ครับ ถ้า javascript ใช้ alert ดูค่า ถ้า php ใช้ echo ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-09-24 10:46:53 By : webmaster
 


 

No. 6



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

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

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

ไม่ได้อะครับ รบกวนหาตัวอย่างให้หน่อยอะครับ ขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-09-24 13:53:41 By : slurpee55555
 


 

No. 7



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

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

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

ได้ละครับ ขอบคุณสำหรับคำตอบที่ดีๆๆ และคุณ mr.win ด้วยนะครับ

ติดตรงนี้เองครับ
<input type="button" name="btnSearch" id="btnSearch" value="ค้นหา" OnClick="JavaScript:doCallAjax(document.getElementById('Tag').value,('txtSearch').value,'1');">

มันต้อง

<input type="button" name="btnSearch" id="btnSearch" value="ค้นหา" OnClick="JavaScript:doCallAjax(document.getElementById('Tag').value,(document.getElementById('txtSearch').value,'1');">

เพิ่มเข้าไปเองครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-09-24 14:40:25 By : slurpee55555
 

   

ค้นหาข้อมูล


   
 

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