|
|
|
[ขอคำแนะนำครับ] ช่วยดู code (เอา add edit delete sameform + paging + search record กัน) ให้หน่อยครับ |
|
|
|
|
|
|
|
ลองเอาตัวอย่างโค้ด add edit delete same form กับ paging กับ search record มารวมกันนะครับ
มันก็ใช้ได้ แต่ติดตรงที่ถ้าจะ edit edit ได้แค่หน้าที่ 1 หน้าเดียวเท่านั้นนะครับ พอไปกด edit หน้าอื่น
มันก็วนกลับมาหน้าที่ 1 ทำให้ไม่สามารถแก้ไขข้อมูลได้นะครับ
พอจะช่วยแนะนำได้ไหมครับว่าต้องแก้ตรงไหนบ้างนะครับ
ขอบคุณล่วงหน้าครับ
Code (PHP)
<?php
session_start();
$currentuser = $_SESSION['valid_user'];
?>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>ระบบติดตามความคืบหน้า ICT_Free_WiFi</title>
</head>
<body>
<b><a href="welcome.php">กลับสู่หน้าหลัก</a></b><br>
<?
require("php_dbinfo.php");
$connection = mysql_connect("localhost",$username,$password) or die("Error Connect to Database");
$db_selected = mysql_select_db($database);
mysql_query("SET NAMES UTF8");
$querystatus = "SELECT status FROM db_login WHERE username = '$currentuser'";
$resultstatus = mysql_query($querystatus);
$row=mysql_fetch_array($resultstatus);
$r = $row['status'];
//*** Update Condition ***//
if($_POST["hdnCmd"] == "Update")
{
$strSQL = "UPDATE markers SET ";
$strSQL .="code = '".$_POST["txtEditcode"]."' ";
$strSQL .=",position = '".$_POST["txtEditposition"]."' ";
$strSQL .=",name = '".$_POST["txtEditname"]."' ";
$strSQL .=",telephone = '".$_POST["txtEdittelephone"]."' ";
$strSQL .=",adsl = '".$_POST["txtEditadsl"]."' ";
$strSQL .=",vlan = '".$_POST["txtEditvlan"]."' ";
$strSQL .=",PVC = '".$_POST["txtEditPVC"]."' ";
$strSQL .=",ip_device = '".$_POST["txtEditipdevice"]."' ";
$strSQL .=",lat = '".$_POST["txtEditlat"]."' ";
$strSQL .=",lng = '".$_POST["txtEditlng"]."' ";
$strSQL .=",serial = '".$_POST["txtEditserial"]."' ";
$strSQL .=",volt = '".$_POST["txtEditvolt"]."' ";
$strSQL .=",part_name = '".$_POST["txtEditpartname"]."' ";
$strSQL .=",place = '".$_POST["txtEditplace"]."' ";
$strSQL .=",tambon = '".$_POST["txtEdittambon"]."' ";
$strSQL .=",ampur = '".$_POST["txtEditampur"]."' ";
$strSQL .=",province = '".$_POST["txtEditprovince"]."' ";
$strSQL .=",install_date = '".$_POST["txtEditinstalldate"]."' ";
$strSQL .="WHERE id = '".$_POST["hdnEditcode"]."' ";
$objQuery = mysql_query($strSQL);
if(!$objQuery)
{
echo "Error Update [".mysql_error()."]";
}
}
if($r == 'superuser')
{
$strSQL = "SELECT * FROM markers WHERE (code LIKE '%".$_POST["search"]."%' OR name LIKE '%".$_POST["search"]."%'
OR adsl LIKE '%".$_POST["search"]."%' OR tambon LIKE '%".$_POST["search"]."%' OR ampur LIKE '%".$_POST["search"]."%'
OR province LIKE '%".$_POST["search"]."%')";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);
$Per_Page = 20;
$Page = $_GET["Page"];
if(!$_GET["Page"])
{
$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;
}
elseif(($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 id ASC LIMIT $Page_Start , $Per_Page";
$objQuery = mysql_query($strSQL);
}
else
{
$strSQL = "SELECT * FROM markers WHERE partname = '$r' AND (code LIKE '%".$_POST["search"]."%' OR name LIKE '%".$_POST["search"]."%'
OR adsl LIKE '%".$_POST["search"]."%' OR tambon LIKE '%".$_POST["search"]."%' OR ampur LIKE '%".$_POST["search"]."%'
OR province LIKE '%".$_POST["search"]."%')";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);
$Per_Page = 20;
$Page = $_GET["Page"];
if(!$_GET["Page"])
{
$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;
}
elseif(($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 id ASC LIMIT $Page_Start , $Per_Page";
$objQuery = mysql_query($strSQL);
}
?>
<form name="frmMain" method="post" action="<?=$_SERVER["PHP_SELF"];?>">
<center><b>ค้นหา :</b><input type="text" name="search" id="search" value="<?=$_GET["search"];?>">
<input type="submit" value="ค้นหา"></center><br>
<input type="hidden" name="hdnCmd" value="">
<table border="2" cellpadding="1" cellspacing="0">
<tr>
<td><b>ID</b></td>
<td><b>รหัสพนักงาน</b></td>
<td><b>คำนำหน้า</b></td>
<td width="20"><center><b>ชื่อ</b></center></td>
<td><b>เบอร์โทรศัพท์</b></td>
<td><b>สายงาน</b></td>
<td><b>ADSL</b></td>
<td><b>Vlan</b></td>
<td><b>PVC</b></td>
<td><b>IP Device</b></td>
<td><b>ละติจูด</b></td>
<td><b>ลองติจูด</b></td>
<td><b>Serial</b></td>
<td><b>ระบบไฟ</b></td>
<td><b>สถานที่ติดตั้ง</b></td>
<td><b>ตำบล</b></td>
<td><b>อำเภอ</b></td>
<td><b>จังหวัด</b></td>
<td><b>วันที่ติดตั้ง</b></td>
<td><b>IP Remote</b></td>
<td><b>วันที่ลงบันทึก</b></td>
</tr>
<?
while($objResult = mysql_fetch_array($objQuery))
{
?>
<?
if($objResult["id"] == $_GET["CusID"] and $_GET["Action"] == "Edit")
{
?>
<tr>
<td><?echo $objresult['id']?></td>
<td><div align="center">
<input type="text" name="txtEditcode" size="10" value="<?=$objResult["code"];?>">
<input type="hidden" name="hdnEditcode" size="10" value="<?=$objResult["id"];?>">
</div></td>
<td><input type="text" name="txtEditposition" size="20" value="<?=$objResult["position"];?>"></td>
<td><input type="text" name="txtEditname" size="20" value="<?=$objResult["name"];?>"></td>
<td><input type="text" name="txtEdittelephone" size="20" value="<?=$objResult["telephone"];?>"></td>
<td><input type="text" name="txtEditpartname" size="20" value="<?=$objResult["part_name"];?>"></td>
<td><input type="text" name="txtEditadsl" size="20" value="<?=$objResult["adsl"];?>"></td>
<td><input type="text" name="txtEditvlan" size="20" value="<?=$objResult["vlan"];?>"></td>
<td><input type="text" name="txtEditPVC" size="20" value="<?=$objResult["PVC"];?>"></td>
<td><input type="text" name="txtEditipdevice" size="20" value="<?=$objResult["ip_device"];?>"></td>
<td><input type="text" name="txtEditlat" size="20" value="<?=$objResult["lat"];?>"></td>
<td><input type="text" name="txtEditlng" size="20" value="<?=$objResult["lng"];?>"></td>
<td><input type="text" name="txtEditserail" size="20" value="<?=$objResult["serial"];?>"></td>
<td><input type="text" name="txtEditvolt" size="20" value="<?=$objResult["volt"];?>"></td>
<td><input type="text" name="txtEditplace" size="20" value="<?=$objResult["place"];?>"></td>
<td><input type="text" name="txtEdittambon" size="20" value="<?=$objResult["tambon"];?>"></td>
<td><input type="text" name="txtEditampur" size="20" value="<?=$objResult["ampur"];?>"></td>
<td><input type="text" name="txtEditprovince" size="20" value="<?=$objResult["province"];?>"></td>
<td><input type="text" name="txtEditinstalldate" size="20" value="<?=$objResult["install_date"];?>"></td>
<td><?echo $objresult['ip_remote']?></td>
<td><?echo $objresult['install_date']?></td>
<td colspan="2" align="right"><div align="center">
<input name="btnAdd" type="button" id="btnUpdate" value="Update" OnClick="frmMain.hdnCmd.value='Update';frmMain.submit();">
<input name="btnAdd" type="button" id="btnCancel" value="Cancel" OnClick="window.location='<?=$_SERVER["PHP_SELF"];?>';">
</div></td>
</tr>
<?
}
else
{
?>
<tr>
<td><?=$objResult["id"];?></td>
<td><div align="center"><?=$objResult["code"];?></div></td>
<td><?=$objResult["position"];?></td>
<td><?=$objResult["name"];?></td>
<td><?=$objResult["telephone"];?></td>
<td><?=$objResult["part_name"];?></td>
<td><?=$objResult["adsl"];?></td>
<td><?=$objResult["vlan"];?></td>
<td><?=$objResult["PVC"];?></td>
<td><?=$objResult["ip_device"];?></td>
<td><?=$objResult["lat"];?></td>
<td><?=$objResult["lng"];?></td>
<td><?=$objResult["serial"];?></td>
<td><?=$objResult["volt"];?></td>
<td><?=$objResult["place"];?></td>
<td><?=$objResult["tambon"];?></td>
<td><?=$objResult["ampur"];?></td>
<td><?=$objResult["province"];?></td>
<td><?=$objResult["install_date"];?></td>
<td><?=$objResult["ip_remote"];?></td>
<td><?=$objResult["date"];?></td>
<td align="center"><a href="<?=$_SERVER["PHP_SELF"];?>?Action=Edit&CusID=<?=$objResult["id"];?>">Edit</a></td>
<!--<td align="center"><a href="JavaScript:if(confirm('Confirm Delete?')==true){window.location='<?//=$_SERVER["PHP_SELF"];?>?Action=Del&CusID=<?//=$objResult["code"];?>';}">Delete</a></td> -->
</tr>
<?
}
}
?>
</table>
หน้า :
<?
if($Prev_Page)
{
echo "<a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page'><< Back</a>";
}
for($i=1; $i<=$Num_Pages; $i++)
{
if($i != $Page)
{
echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i'>$i</a> ]";
}
else
{
echo "<b> $i </b>";
}
}
if($Page != $Num_Pages)
{
echo "<a href='$_SERVER[SCRIPT_NAME]?Page=$Next_Page'>Next>></a>";
}
?>
</form>
<?
mysql_close($connection);
?>
</body>
</html>
Tag : PHP, MySQL, HTML/CSS, JavaScript
|
|
|
|
|
|
Date :
2012-01-09 18:24:10 |
By :
striderblue |
View :
1115 |
Reply :
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอนที่แก้ไขคุณจะต้องส่งหน้าไปด้วยครับ
Code (PHP)
<a href="<?=$_SERVER["PHP_SELF"];?>?Action=Edit&CusID=<?=$objResult["id"];?>&Page=<?=$_GET["Page"];?>">Edit</a>
|
|
|
|
|
Date :
2012-01-09 21:04:00 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณมากๆ ครับ สำหรับคำแนะนำครับ..
พอดียังมือใหม่หัดลองเขียน PHP
|
|
|
|
|
Date :
2012-01-09 21:38:24 |
By :
striderblue |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าทำแบบนี้ไม่ว่าจะส่งค่า post หรือ get ไปหน่าไหน คุณจะต้องส่งตัวแปร $Page ไปด้วยครับ
|
|
|
|
|
Date :
2012-01-09 21:47:00 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอถามเพิ่มอีกครับ
ตอนนี้กลายเป็นว่าตอน search ข้อมูลมันค้นหาแล้วเรียงจำนวนหน้าให้ตรงกับข้อมูลที่ค้นแล้วดังรูป
แต่พอไปหน้าถัดไปมันไม่ทำงาน แล้วกลายเป็น select ข้อมูลทั้งหมดของหน้าที่ 2 แทนนะครับ
แล้วผมก็ลองค้นหาเพิ่มเติมในบทความ search record paging ก็เลยใส่โค้ดเพิ่มต่อท้ายของเก่านะครับ
Code (PHP)
&search=$_POST[search]
Code (PHP)
if($Prev_Page)
{
echo "<a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page&search=$_POST[search]'><< Back</a>";
}
for($i=1; $i<=$Num_Pages; $i++)
{
if($i != $Page)
{
echo "[ <a href='$_SERVER[PHP_SELF]?Page=$i&search=$_POST[search]'>$i</a> ]";
}
else
{
echo "<b> $i </b>";
}
}
if($Page != $Num_Pages)
{
echo "<a href='$_SERVER[PHP_SELF]?Page=$Next_Page&search=$_POST[search]'>Next>></a>";
}
ก็ยังไม่ทำงาน ผลที่ได้ยังเหมือนเดิมนะครับ
ช่วยแนะนำทีครับ
|
ประวัติการแก้ไข 2012-01-10 14:36:42
|
|
|
|
Date :
2012-01-10 13:49:33 |
By :
striderblue |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
if($_POST["search"] != "")
{
$search = $_POST["search"];
}
else
{
$search = $_GET["search"];
}
Code (PHP)
echo "<a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page&search=$search'><< Back</a>";
|
|
|
|
|
Date :
2012-01-10 15:38:58 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|