เวลาอัพเดทข้อมูลใน List Memu แล้วรหัสอื่นอัพเดทไปด้วยครับควรทำอย่างไรครับ
คือว่าผมจะทำการยืนยันครับว่ากรองข้อมูลแล้วยังไม่แสดงจะให้adminยืนยันก่อนครับ แต่ติดปัญหาตรงที่ว่า พอกดยืนยันไปแล้วidอื่นก็อัพเดทเป็น1ไปด้วยก่อนครับ ช่วยทีครับ
Code (SQL)
-- phpMyAdmin SQL Dump
-- version 2.10.3
-- http://www.phpmyadmin.net
--
-- โฮสต์: localhost
-- เวลาในการสร้าง:
-- รุ่นของเซิร์ฟเวอร์: 5.0.51
-- รุ่นของ PHP: 5.2.6
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- ฐานข้อมูล: `senddata`
--
-- --------------------------------------------------------
--
-- โครงสร้างตาราง `send`
--
CREATE TABLE `send` (
`id` int(4) NOT NULL auto_increment,
`namesend` varchar(100) NOT NULL,
`status` varchar(1) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=14 ;
--
-- dump ตาราง `send`
--
INSERT INTO `send` VALUES (5, 'Test1', '1');
INSERT INTO `send` VALUES (13, 'Test3', '1');
INSERT INTO `send` VALUES (12, 'Test2', '1');
show.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
.dd {
text-align: center;
}
</style>
</head>
<body>
<?
$objConnect = mysql_connect("localhost","root","123456") or die("Error Connect to Database");
$objDB = mysql_select_db("senddata");
mysql_query("SET NAMES UTF8");
$strSQL = "SELECT * FROM send order by id desc";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
?>
<p align="center"><font color="#0000FF" size="5"><span lang="th">
รายชื่อรอยืนยัน</span></font></p>
<p align="center"><a href="index.php">เพื่อรายชื่อ</a></p>
<table align="center" width="427" border="1" cellspacing="0" cellpadding="3">
<tr>
<td width="32" align="center">รหัส</td>
<td width="197" align="center">ชื่อ</td>
<td width="68" align="center">สถานะ</td>
<td width="50" align="center">ยืนยัน</td>
<td width="38" align="center">ลบ</td>
</tr>
<?
$i=0;
while($objResult = mysql_fetch_array($objQuery))
{
$i++;
?>
<tr>
<td align="center"><?=$objResult["id"];?></td>
<td><?=$objResult["namesend"];?></td><form id="form1" name="form1" method="post" action="updatedata.php?id=<?=$objResult['id'];?> ">
<td align="center">
<label for="status"></label>
<select name="status" id="status">
<?
$pf0 = ($$objResult['status']=="1")? " selected":"";
$pf1 = ($$objResult['status']=="0")? " selected":"";
?>
<option value="1" <?=$pf0;?> >ยืนยัน</option>
<option value="0" <?=$pf1;?> >ปฎิเสธ</option>
</select>
</td>
<td align="center">
<input type="submit" name="confirm" id="confirm" value="ยืนยัน" />
</td></form>
<td align="center"><a href="deletedata.php?id=<?=$objResult['id'];?>"><input type="submit" name="Noconfirm" id="Noconfirm" value="ลบ" /></a></td>
</tr>
<? } ?>
</table>
<?
mysql_close($objConnect);
?>
</body>
</html>
updatedata.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<META HTTP-EQUIV="Refresh" CONTENT="1;URL=show.php">
<title>Untitled Document</title>
</head>
<body>
<?
$objConnect = mysql_connect("localhost","root","123456") or die("Error Connect to Database");
$objDB = mysql_select_db("senddata");
mysql_query("SET NAMES utf8", $objConnect);
$strSQL = "UPDATE `senddata`.`send` SET `status` = '$_POST[status]' WHERE `send`.`id`";
$objQuery = mysql_query($strSQL);
if($objQuery)
{
echo "Save Done.";
}
else
{
echo "Error Save [".$strSQL."]";
}
mysql_close($objConnect);
?>
</body>
</html>
ขอบคุณครับTag : PHP, MySQL, HTML/CSS, JavaScript
ประวัติการแก้ไข 2013-06-16 15:36:18
Date :
2013-06-16 15:33:35
By :
mongkolchai
View :
974
Reply :
11
แก้จาก
Code (PHP)
$strSQL = "UPDATE `senddata`.`send` SET `status` = '$_POST[status]' WHERE `send`.`id`";
เป็น
Code (PHP)
$strSQL = "UPDATE `senddata`.`send` SET `status` = '$_POST[status]' WHERE `send`.`id` =".intval($_GET['id']);
Date :
2013-06-16 15:36:21
By :
itpcc
ไปหาคำตอบ,า.ห้ผ,ก่อนนะครับ ว่าก่อนหน้าบรรทัดที่ 50 $strSQL หายไปไหน ทำไหมถึงต่อข้อความอย่างนั้น?
Date :
2013-06-16 16:22:33
By :
itpcc
ได้แล้วครับชอบคุณมากๆครับ ที่ แนะนำ
หาตั้งนานครับว่าผิดตรงไหน เทียบดูแล้วดูอีก
ที่แท้ บรรทัดที่ 19 $strSQL = "SELECT * FROM send order by id desc";
ผมตัด order by id desc ออกก็ใช้งานได้เลยครับ ขอบคุณมากๆ
ประวัติการแก้ไข 2013-06-16 18:18:37 2013-06-16 18:24:28
Date :
2013-06-16 17:20:56
By :
mongkolchai
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
.dd {
text-align: center;
}
</style>
</head>
<body>
<p align="center"><font color="#0000FF" size="5"><span lang="th">
รายชื่อรอยืนยัน</span></font></p>
<p align="center"><a href="index.php">เพื่อรายชื่อ</a></p>
<?php
$objConnect = mysql_connect("localhost","root","123456") or die("Error Connect to Database");
$objDB = mysql_select_db("senddata");
mysql_query("SET NAMES UTF8");
$strSQL = "SELECT COUNT(`id`) AS cnt FROM `send`";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."] : ".mysql_error());
$Num_Rows = mysql_fetch_assoc($objQuery);
$Num_Rows = $Num_Rows['cnt'];
$Per_Page = 10; // Per Page
$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;
else if(($Num_Rows % $Per_Page)==0) $Num_Pages = intval($Num_Rows/$Per_Page);
else $Num_Pages = intval(($Num_Rows/$Per_Page)+1);
$strSQL ="SELECT * FROM `send` ORDER BY `id` ASC LIMIT $Page_Start , $Per_Page";
$objQuery = mysql_query($strSQL);
?>
<table align="center" width="427" border="1" cellspacing="0" cellpadding="3">
<tr>
<td width="32" align="center">รหัส</td>
<td width="197" align="center">ชื่อ</td>
<td width="68" align="center">สถานะ</td>
<td width="50" align="center">ยืนยัน</td>
<td width="38" align="center">ลบ</td>
</tr>
<?php
if($Page > 1) $no = $Per_Page * $Page;
else $no = 0;
while($objResult = mysql_fetch_assoc($objQuery)) :
$no++;
?>
<tr>
<td align="center"><?=$objResult["id"];?></td>
<td><?php echo $objResult["namesend"];?></td><form id="form1" name="form1" method="post" action="updatedata.php?id=<?php echo $objResult['id'];?> ">
<td align="center">
<label for="status"></label>
<select name="status" id="status">
<option value="1" <?php echo ($$objResult['status']=="1")? " selected":""; ?> >ยืนยัน</option>
<option value="0" <?php echo ($$objResult['status']=="0")? " selected":""; ?> >ปฎิเสธ</option>
</select>
</td>
<td align="center">
<input type="submit" name="confirm" id="confirm" value="ยืนยัน" />
</td></form>
<td align="center"><a href="deletedata.php?id=<?php echo $objResult['id'];?>"><input type="submit" name="Noconfirm" id="Noconfirm" value="ลบ" /></a></td>
</tr>
<?php endwhile; ?>
</table>
<br>
Total <?php echo $Num_Rows;?> Record : <?php echo $Num_Pages;?> Page :
<?
if($Prev_Page>0)
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> ";
mysql_close($objConnect);
?>
</body>
</html>
Date :
2013-06-16 18:25:51
By :
itpcc
Load balance : Server 01