|
|
|
Script ajax { list/edit/delete} ใน pate เดียวครับ คือผมโหลด script ajax จากที่นี้แหล่ะ แต่นำไปดัดแปลง |
|
|
|
|
|
|
|
คือผมโหลด script ajax จากที่นี้แหล่ะ แต่นำไปดัดแปลงนิดหน่อยคือผมอยากจะให้หน้า list/edit/delete อยู่ในหน้า
เดียวกันเลยครับ ตาม script ด้านล่างนี้ที่ผมดัดแปลงมาแต่จะติดตรงที่ว่าเมื่อเวลาเราเลือกไปที่หน้าใดๆ ก็ตามเมื่อมีการ edit และกด Update ผมอยากจะให้ยังคงอยู่หน้านั้นเหมือนเดิม
จึงอยากสอบถามพี่ๆในกระทู้หน่อยครับว่า
ตรง ??????? ข้างล่างจะส่งตัวแปรของ page ที่แสดงอยู่ขณะนั้นมาใส่ได้อย่างไรครับซึ่งหากส่งค่ามาใส่ตรงนี้ได้ เมื่อ edit และกด Update มันก็จะยังคงหน้านั้นครับ
หรือหากพี่ๆมีคำแนะนำอย่างอืนก็รบกวนด้วยนะครับ
AjaxPHPListRecordPaging1
Code
<?php
/*** By Weerachai Nukitram***/
/*** http://www.ThaiCreate.Com ***/
?>
<html>
<head>
<title>ThaiCreate.Com Ajax Tutorial</title>
<style type="text/css">
body{
font:Verdana, Arial, Helvetica, sans-serif;
font-size:11px;
}
th{
font:Verdana, Arial, Helvetica, sans-serif;
font-size:11px;
text-align:center;
font-weight:bold;
}
td{
font:Verdana, Arial, Helvetica, sans-serif;
font-size:11px;
padding-left:4px;
}
a{
text-decoration:none
}
#form{
font-size:10px;
}
#form.input{
font-size:10px;
}
</style>
<script language="javascript">
var HttPRequest = false;
function doCallAjax(Mode,Page,ID) {
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 = 'AjaxPHPListRecordPaging2.php';
if(Mode == "LIST" || Mode == "DELETE")
{
var pmeters = "tMode=" + Mode +
"&myPage=" + Page +
"&tID=" + ID;
}
if(Mode == "UPDATE")
{
var pmeters = "tCustomerID=" + encodeURI( document.getElementById("txtCustomerID").value) +
"&tName=" + encodeURI( document.getElementById("txtName").value ) +
"&tEmail=" + encodeURI( document.getElementById("txtEmail").value ) +
"&tCountryCode=" + encodeURI( document.getElementById("txtCountryCode").value ) +
"&tBudget=" + encodeURI( document.getElementById("txtBudget").value ) +
"&tUsed=" + encodeURI( document.getElementById("txtUsed").value ) +
"&myPage=" + Page +
"&tMode=" + Mode;
}
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
{
if(Mode == "UPDATE")
{
document.getElementById("myForm").style.display = 'none';
document.getElementById("txtCustomerID").value = '';
document.getElementById("txtName").value = '';
document.getElementById("txtEmail").value = '';
document.getElementById("txtCountryCode").value = '';
document.getElementById("txtBudget").value = '';
document.getElementById("txtUsed").value = '';
document.getElementById("mySpan").innerHTML = HttPRequest.responseText;
}else{
document.getElementById("mySpan").innerHTML = HttPRequest.responseText;
}
}
}
}
function ShowEdit(sCustomerID,sName,sEmail,sCountryCode,sBudget,sUsed)
{
document.getElementById("myForm").style.display = '';
document.getElementById("txtCustomerID").value = sCustomerID;
document.getElementById("txtName").value = sName;
document.getElementById("txtEmail").value = sEmail;
document.getElementById("txtCountryCode").value = sCountryCode;
document.getElementById("txtBudget").value = sBudget;
document.getElementById("txtUsed").value = sUsed;
}
</script>
</head>
<body Onload="JavaScript:doCallAjax('LIST','1','');">
<h1>My Customer</h1>
<form name="frmMain">
<span id="mySpan"></span>
</form>
<form name="frmMain">
<span id="myForm" style="display='none';">
<table width="731" border="1">
<tr>
<th width="91"> <div align="center">CustomerID</div></th>
<th width="98"> <div align="center">Name</div></th>
<th width="198"> <div align="center">Email</div></th>
<th width="97"> <div align="center">CountryCode</div></th>
<th width="59"> <div align="center">Budget</div></th>
<th width="71"> <div align="center">Used</div></th>
</tr>
<tr>
<td><div align="center"><input type="text" name="txtCustomerID" id="txtCustomerID" size="5" disabled="true"></div></td>
<td><input type="text" name="txtName" id="txtName" size="20"></td>
<td><input type="text" name="txtEmail" id="txtEmail" size="20"></td>
<td><div align="center"><input type="text" name="txtCountryCode" id="txtCountryCode" size="2"></div></td>
<td align="right"><input type="text" name="txtBudget" id="txtBudget" size="5"></td>
<td align="right"><input type="text" name="txtUsed" id="txtUsed" size="5"></td>
</tr>
</table>
<input type="button" name="btnUpdate" id="btnUpdate" value="Update" OnClick="JavaScript:doCallAjax('UPDATE','???????');">
<br><br>
</span>
<span id="mySpan"></span>
</form>
################################
AjaxPHPListRecordPaging2
Code
[code]<?php
/*** By Weerachai Nukitram ***/
/*** http://www.ThaiCreate.Com ***/
$strPage = $_POST["myPage"];
$strMode = $_POST["tMode"];
$strID = $_POST["tID"];
$objConnect = mysql_connect("localhost","root","www") or die("Error Connect to Database");
$objDB = mysql_select_db("thaicre_ajax");
if($strMode == "DELETE")
{
$strSQL = "DELETE FROM customer ";
$strSQL .="WHERE CustomerID = '".$strID."' ";
$objQuery = mysql_query($strSQL);
}
if($strMode == "UPDATE")
{
$strSQL = "UPDATE customer SET ";
$strSQL .="Name = '".$_POST["tName"]."' ";
$strSQL .=",Email = '".$_POST["tEmail"]."' ";
$strSQL .=",CountryCode = '".$_POST["tCountryCode"]."' ";
$strSQL .=",Budget = '".$_POST["tBudget"]."' ";
$strSQL .=",Used = '".$_POST["tUsed"]."' ";
$strSQL .="WHERE CustomerID = '".$_POST["tCustomerID"]."' ";
$objQuery = mysql_query($strSQL);
}
$strSQL = "SELECT * FROM customer ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);
$Per_Page = 4; // 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 CustomerID ASC LIMIT $Page_Start , $Per_Page";
$objQuery = mysql_query($strSQL);
?>
<table width="731" border="1">
<tr>
<th width="91"> <div align="center">CustomerID </div></th>
<th width="98"> <div align="center">Name </div></th>
<th width="198"> <div align="center">Email </div></th>
<th width="97"> <div align="center">CountryCode </div></th>
<th width="59"> <div align="center">Budget </div></th>
<th width="71">Used </th>
<th width="71">Actions</th>
</tr>
<?
while($objResult = mysql_fetch_array($objQuery))
{
?>
<tr>
<td><div align="center" style="text-transform:capitalize;">
<?=$objResult["CustomerID"];?>
</div></td>
<td><div style="text-transform:capitalize;">
<?=$objResult["Name"];?>
</div></td>
<td><div style="text-transform:lowercase;">
<?=$objResult["Email"];?>
</div></td>
<td><div align="center" style="text-transform:uppercase;">
<?=$objResult["CountryCode"];?>
</div></td>
<td align="right"><?=$objResult["Budget"];?>
</div></td>
<td align="right"><?=$objResult["Used"];?></td>
<td align="center">
<a href="JavaScript:ShowEdit('<?=$objResult["CustomerID"];?>', '<?=$objResult["Name"];?>','<?=$objResult["Email"];?>','<?=$objResult["CountryCode"];?>', '<?=$objResult["Budget"];?>','<?=$objResult["Used"];?>')">Edit</a>
<a href="JavaScript:doCallAjax('DELETE','<?=$strPage;?>','<?=$objResult["CustomerID"];?>');">Del</a>
</div></td>
</tr>
<?
}
?>
</table>
<table width="700" border="0">
<tr>
<td><div style="text-transform:uppercase;vertical-align:middle;">Total
<?= $Num_Rows;?>
Record :
<?=$Num_Pages;?>
Page :
<?
if($Prev_Page)
{
echo " <a href=\"JavaScript:doCallAjax('LIST','$Prev_Page')\">previous</a> ";
}
for($i=1; $i<=$Num_Pages; $i++){
if($i != $Page)
{
echo "[ <a href=\"JavaScript:doCallAjax('LIST','$i')\">$i</a> ]";
}
else
{
echo "<font color=red><b> $i </b></font>";
}
}
if($Page!=$Num_Pages)
{
echo " <a href=\"JavaScript:doCallAjax('LIST','$Next_Page')\">Next</a> ";
}
mysql_close($objConnect);
?>
</div></td>
</tr>
</table>
</body>
</html>[/code]
ขอขอบคุณ
K'Weerachai Nukitram และ ThaiCreate.Com ที่ให้แต่สิ่งดีๆๆครับ
Tag : - - - -
|
|
|
|
|
|
Date :
2009-08-13 00:41:45 |
By :
khanham |
View :
1554 |
Reply :
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จึ๋ย.....ไม่มีใครตอบเลยอ่ะ
|
|
|
|
|
Date :
2009-08-13 20:04:36 |
By :
khanham |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขี้เกียจแกะโค้ดอะครับ ถ้าใช้ jQuery 3 จึ๊กอยู่ หลังจากที่ใช้ได้แล้ว ลืมอันอื่นหมด TT
|
|
|
|
|
Date :
2009-08-13 20:09:41 |
By :
pjgunner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|