สั่งอัพเดท100คอลัมน์ของฐานข้อมูลด้วยคลิกเดียว ต้องเขียนโค้ดอย่างไรครับ
แบบ นี้เหรอ
update ip_ban set ip_low= xxx where ip_ban like = 'ip_low%'
Date :
2014-10-09 16:59:22
By :
gaowteen
มันมี 8 คอลัมน์ครับ ผมลองแล้ว งง ตรง WHERE ip_ban like = 'ip_low%'
Code (PHP)
UPDATE smf_ban_items SET
ip_low1=0 ,
ip_high1=0 ,
ip_low2=0 ,
ip_high2=0 ,
ip_low3=0 ,
ip_high3=0 ,
ip_low4=0 ,
ip_high5=0
WHERE ip_ban like = 'ip_low%'
ประวัติการแก้ไข 2014-10-09 18:05:11
Date :
2014-10-09 17:58:58
By :
Meen2007
เดี๋ยวนะขอเรียงความเข้าใจก่อน
1. มี 8 ฟิล คือ id_ban id_low1 บลาบลาบลา
2. มีเรคคอร์ดเป็นร้อยร้อยๆ
ผมเข้าใจแบบนี้ถูกเปล่าครับ ทีนี้จะทำยังไงให้ update ทั้งหมดในคลิกเดียว ง่ายมากแค่ นับเรคคอร์ดมาแล้วเอา while ครอป โดยหยุดเมื่อหมดแถว
$i=0
$Row=mysql num rows (จำนวนเรคคอร์ดที่มี )
$result=mysql fetch array (ตัวแปรsql)
While($i<$Row) {
โค้ดอัพเดท 8อันนั้นเท่ากับ0 โดยที่ where id_ban = $result(id_ban)
$i++
}
เสร็จหละจิ้มที่เดียวไปหมด
ปล.ผมเขียนโค้ดอาจไม่ถูกนะครับเขียนบนมือถือ เอาไปเป็นแนวทางพอนะ
Date :
2014-10-09 18:31:11
By :
meannerss
จะอัพทั้งหมดก็ไม่ต้อง where ครับ
Date :
2014-10-09 18:44:52
By :
gaowteen
Code (PHP)
<?php
$con=mysqli_connect("localhost","xxxx","xxx","xxxx");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysqli_query($con,"
UPDATE smf_ban_items SET
ip_low1=0 ,
ip_high1=0 ,
ip_low2=0 ,
ip_high2=0 ,
ip_low3=0 ,
ip_high3=0 ,
ip_low4=0 ,
ip_high5=0
");
mysqli_close($con);
?>
ไม่สำเร็จครับ ไม่มีฟ้อง error ใดๆ แต่ไม่อัพเดท ลองใส่ where id_ban = '82' เพียง 1 ฟิลด์ ข้อมูลก็ไม่เปลี่ยน
มีส่วนไหนผิดพลาดไม่ทราบครับ
Date :
2014-10-09 19:37:32
By :
Meen2007
ลอง copy ไปรันใน phpmyaddminว่าได้ปะ
Date :
2014-10-09 20:57:23
By :
gaowteen
แก้ไขได้เรียบร้อยแล้วครับ ขอบคุณมากครับ
<?php
$host="localhost"; // Host name
$username="xxx"; // Mysql username
$password="xxx"; // Mysql password
$db_name="xxx"; // Database name
$tbl_name="smf_ban_items"; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="UPDATE smf_ban_items SET
ip_low1='0' ,
ip_high1='0' ,
ip_low2='0' ,
ip_high2='0' ,
ip_low3='0' ,
ip_high3='0' ,
ip_low4='0' ,
ip_high4='0'
";
$result=mysql_query($sql);
?>
Date :
2014-10-09 23:09:19
By :
Meen2007
Load balance : Server 05