|
|
|
การใช้ UPDATE มีวิธีการประกาศตัวแปรที่กระชับกว่านี้ไหม๋ครับ ช่วยแนะนำด้วยครับ |
|
|
|
|
|
|
|
เนื่องจากจะอัพเดทข้อมูล ถ้าหากหน้า From มีข้อมูลที่จะอัพเดทเยอะๆ โดยปรกติจะทำแบบนี้
Code (PHP)
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("mydatabase");
$strSQL = "UPDATE customer SET ";
$strSQL .="CustomerID = '".$_POST["txtCustomerID"]."' ";
$strSQL .=",Name = '".$_POST["txtName"]."' ";
$strSQL .=",Email = '".$_POST["txtEmail"]."' ";
$strSQL .=",CountryCode = '".$_POST["txtCountryCode"]."' ";
$strSQL .=",Budget = '".$_POST["txtBudget"]."' ";
$strSQL .=",Used = '".$_POST["txtUsed"]."' ";
$strSQL .="WHERE CustomerID = '".$_GET["CusID"]."' ";
$objQuery = mysql_query($strSQL);
หรือแบบนี้
Code (PHP)
$id = $_POST['id'];
$cate_id = $_POST['cate_id'];
$toppic = $_POST['toppic'];
$cont = $_POST['cont'];
$sql = "update content set id='$id', toppic='$toppic', cate_id='$cate_id', cont='$cont' where id='".$id."' ";
$result = mysql_query($sq);
ถ้าหากใช้ while เข้ามาช่วยจะได้ไหม๋ครับ คือผมไม่อยากจะประกาศแบบ $_POST['..']' แต่อยากจะให้ตัวแปร $xx['...'] แบบนี้เลยนะครับ
อย่างที่ผมเคยใช้แบบนี้
Code (PHP)
$strSQL = "SELECT * FROM mamber";
$objQuery = mysql_query($strSQL) or die("Error Query [".$strSQL."]");
while($objResult = mysql_fetch_array($objQuery)){
echo $objResult[UserID];
}
ประมาณนี้นะครับ ไม่ทราบว่าจะเอาการใช้ while แบบนี้ไปใช้ในการกำหนดตัวแปร เพื่อที่จะอัพเดทข้อมูลได้ไหม๋ครับ ถ้าได้เราควรเขียนอย่างไรบ้างครับ
ขอบคุณมากๆครับ
Tag : PHP, MySQL
|
ประวัติการแก้ไข 2011-06-26 20:50:37 2011-06-26 20:51:38
|
|
|
|
|
Date :
2011-06-26 20:48:59 |
By :
fogza |
View :
1054 |
Reply :
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แบบนี้ดีที่สุดแล้วครับ มีประโยชน์ในการตรวจสอบค่า และ เขียนง่าย ดูง่ายด้วยครับ
|
|
|
|
|
Date :
2011-06-26 21:07:57 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าไม่อยากมีปัญหา escape string ด้วยจะดีที่สุด
|
|
|
|
|
Date :
2011-06-26 21:31:34 |
By :
PlaKriM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ค้นหาเรื่อง SQL Injection ครับ แล้วจะรู้ว่าที่ผมพูดเรื่องอะไร
|
|
|
|
|
Date :
2011-06-26 21:47:37 |
By :
PlaKriM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันคือการเลี่ยงอักขระพิเศษใช่ไหม๋ครับ ผมลองอ่านข้อมูลดูแต่ยังงงๆ อยู่
แล้วก็มีคนเข้าอธิบายการใช้
get_magic_quotes_gpc()
แต่ยังงงๆ ไม่ทราบว่ามันช่วยป้องกันได้อย่างไร ขอความรู้เพิ่มเติมทีนะครับ ขอบคุณมากครับ
|
|
|
|
|
Date :
2011-06-26 21:49:06 |
By :
fogza |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
get_magic_quotes_gpc เอาไว้เช็คว่า server เซ็ต magic_quotes_gpc = On หรือเปล่า ซึ่งมันจะ escape string ให้ GET, POST และ Cookie ให้อัตโนมัติโดยที่เราไม่ต้องเขียน escape string เอง
|
|
|
|
|
Date :
2011-06-26 23:01:06 |
By :
PlaKriM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก็ต้องดูว่าใช้ .htaccess ได้หรือเปล่า
|
|
|
|
|
Date :
2011-06-26 23:10:11 |
By :
PlaKriM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมชอบใช้ แบบ $_POST, $_GET นะ ข้อดี
1. รู้ทันทีว่า เป็น request var
2. ไม่เปลืองตัวแปร ไม่เปลืองชื่อ ต้องคิดชื่ออีก หาก ว่ามันจะซ้ำกันตัวอื่นในสคริปต์ เช่น <input type="text" name="number">
$number อาจใช้เพื่อจุดประสงค์อย่างอื่น ได้อีก (ไม่ต้องจำมาก)
อย่าง
Code (PHP)
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("mydatabase");
$strSQL = "UPDATE customer SET ";
$strSQL .="CustomerID = '".$_POST["txtCustomerID"]."' ";
$strSQL .=",Name = '".$_POST["txtName"]."' ";
$strSQL .=",Email = '".$_POST["txtEmail"]."' ";
$strSQL .=",CountryCode = '".$_POST["txtCountryCode"]."' ";
$strSQL .=",Budget = '".$_POST["txtBudget"]."' ";
$strSQL .=",Used = '".$_POST["txtUsed"]."' ";
$strSQL .="WHERE CustomerID = '".$_GET["CusID"]."' ";
$objQuery = mysql_query($strSQL);
เขียนได้ดี แต่แนะนำให้พิมพ์น้อยกว่านี้
EX
$sql = "CustomerID = '".$_POST["txtCustomerID"]."' "
.",Name = '".$_POST["txtName"]."' "
.",Email = '".$_POST["txtEmail"]."' "
.",Name = '".$_POST["txtName"]."' "
.",Email = '".$_POST["txtEmail"]."' "
.",Name = '".$_POST["txtName"]."' "
.",Email = '".$_POST["txtEmail"]."' ";
// other
แค่แนะนำคงไม่ว่ากัน แนวทางหนึ่ง
http://www.pjgunner.com
|
ประวัติการแก้ไข 2011-06-26 23:15:55
|
|
|
|
Date :
2011-06-26 23:11:39 |
By :
pjgunner.com |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สร้างตัวแปรให้เปลืองเมมทำไมกันน้อ มันไม่น่าจะพิมพ์ยากกว่ากันนะ ถ้าใช้ editor ที่มี auto completion แถมมันแยกสีให้ดูง่ายอีก
|
|
|
|
|
Date :
2011-06-26 23:28:28 |
By :
PlaKriM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|