รบกวนช่วยหน่อยครับ ผมจะค้นหาข้อมูลแบบหลายเงื่อไขพร้อมกับแบ่งหน้า ด้วย Ajax แต่มันไม่ยอมทำตามเงื่่อนไข มันค้นหาแค่ id อย่างเดียว
AjaxPHPSearchRecordPaging1.php
Code (PHP)
<html>
<head>
<title>ThaiCreate.Com Ajax Tutorial</title>
</head>
<script language="JavaScript">
var HttPRequest = false;
function doCallAjax(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 = 'AjaxPHPSearchRecordPaging2.php';
var pmeters = 'mySearch='+Search;
var pmeters = "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 = "Now is Loading...";
}
if(HttPRequest.readyState == 4) // Return Request
{
document.getElementById("mySpan").innerHTML = HttPRequest.responseText;
}
}
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=TIS-620");req.send(null);
}
</script>
<body Onload="JavaScript:doCallAjax('','');">
<h1>แสดงข้อมูล CD</h1>
<form name="frmMain">
<center>Search
<select name="field" id="field" value="">
<option value="">--- เลือก ---</option>
<option value="cd_code">รหัส CD</option>
<option value="cd_name">ชื่อภาพยนต์</option>
</select>
<input type="text" name="txtSearch" id="txtSearch" onKeyUp="JavaScript:doCallAjax(document.getElementById('txtSearch').value,'1');">
<br><br>
<span id="mySpan"></span>
</center>
</form>
</body>
</html>
AjaxPHPSearchRecordPaging2.php
Code (PHP)
<?php
header("content-type: application/x-javascript; charset=TIS-620");
include("connection.php");
$strSearch = $_POST["mySearch"];
//$strField = $_POST["myField"];
$strPage = $_POST["myPage"];
$strSQL = "SELECT * FROM cd WHERE cd_code LIKE '%".$strSearch."%' OR cd_name LIKE '%".$strSearch."%' ";
/*
if($strSearch)
{
$sql .=" where $strField like '%".$strSearch."%' ";
} */
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);
echo "<br>";
echo "<center>ค้นหาเจอทั้งหมด ( $Num_Rows ) จากคำว่า ( $keyword ) </center>";
$Per_Page = 2; // 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 cd_code ASC LIMIT $Page_Start , $Per_Page";
$objQuery = mysql_query($strSQL);
?>
<table width="600" border="1">
<tr>
<th width="91"> <div align="center">รหัส CD</div></th>
<th width="98"> <div align="center">ชื่อภาพยนต์</div></th>
<th width="198"> <div align="center">จำนวน</div></th>
<th width="97"> <div align="center">ประเภท</div></th>
</tr>
<?
while($objResult = mysql_fetch_array($objQuery))
{
?>
<tr>
<td><div align="center"><?=$objResult["cd_code"];?></div></td>
<td><?=$objResult["cd_name"];?></td>
<td><?=$objResult["cd_num"];?></td>
<td>
<div align="center">
<?
$s = mysql_query("select * from type where type_id = '".$objResult[type_id]."' ");
$v = mysql_fetch_array($s);
echo $v['type_name'];
?>
</div>
</td>
</tr>
<?
}
?>
</table>
<br>
Total <?= $Num_Rows;?> Record : <?=$Num_Pages;?> Page :
<?
if($Prev_Page)
{
echo " <a href=\"JavaScript:doCallAjax(document.getElementById('txtSearch').value,'$Prev_Page')\"><< Back</a> ";
}
for($i=1; $i<=$Num_Pages; $i++){
if($i != $Page)
{
echo "[ <a href=\"JavaScript:doCallAjax(document.getElementById('txtSearch').value,'$i')\">$i</a> ]";
}
else
{
echo "<b> $i </b>";
}
}
if($Page!=$Num_Pages)
{
echo " <a href=\"JavaScript:doCallAjax(document.getElementById('txtSearch').value,'$Next_Page')\">Next >></a> ";
}
?>
Tag : JavaScript, Ajax, JAVA
Date :
2012-07-19 13:55:43
By :
softwarelp
View :
1091
Reply :
3
ผมพยายามจะใช้ select ในการเลือกหมวดหมู่ และลองใช้ OR ใน MYSQL ก้อไม่ได้ ผมลองมาหลายวันแล้วครับไม่ได้ซักที ยังงัยรบกวนช่วยหน่อยนะครับ
Date :
2012-07-19 13:58:41
By :
softwarelp
คุณก็ส่งไปหลายเงื่อนไขน่ะครับ ดูตัวอย่างได้จากพวก form Add/Insert ครับ
Date :
2012-07-19 21:03:35
By :
mr.win
ลองรบกวนช่วยยกตัวอย่างให้ผมหน่อยได้มั้ยครับ ตอนนี้ผมมึนไปหมดแล้ว ลองนั่งทำนั่งแก้มาหลายวันแล้วครับ ไม่ได้เลย ไม่รู้มันส่งค่าอะไรผิดตรงไหนรึเปล่า ช่วยรบกวนดูให้ทีนะครับ
Date :
2012-07-19 21:12:23
By :
softwarelp
Load balance : Server 01