|
|
|
มันมีเทคนิคอะไรไหมครับ ที่เรา $_POST[] แค่คั้งเดียวจากฟอร์มคือไม่ต้องมานั่งเขียนตัวแปร $_POST[] ซ้ำๆ |
|
|
|
|
|
|
|
มันลายตา แต่สิ่งที่ได้มาคือความง่ายตอ่การตรวจเชค การ DEBUG ครับผม
|
|
|
|
|
Date :
2010-06-06 06:44:33 |
By :
deawx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$_POST["name"] นี่ก็ง่ายสุดแล้วน่ะครับ สำหรับการอ่านค่า
|
|
|
|
|
Date :
2010-06-06 07:28:41 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ครับผม ขอบคุณมากครับ เล็กน้อยที่ยิ่งใหญ่จริงๆ
|
|
|
|
|
Date :
2010-06-06 11:16:58 |
By :
Manussawin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สามารถทำได้ครับหากใช้ CodeIgniter ด้วยฟังก์ชั่น
$this->db->insert
$ArrayOfField=array(
'id'=>10,
'firstname'=>'Jack',
'lastname'=>'Dawson'
);
$this->db->insert('tableName', $ArrayOfField);
จากรูปแบบข้างต้นมันจะทำการ run คำสั่ง sql "insert into tablename (id, firstname, lastname) values('10','Jack','Dawson')" ให้เลยครับ
และในเมื่อ $_POST ซึ่งเป็น array อยู่แล้วเราก็สามารถเอาตัวแปร $_POST มาเป็นพารามิเตอร์ที่สองของฟังก์ชั่นนี้ได้เลย แต่เนื่องจากว่าตัวแปร $_POST จะติดตัว item มาด้วยที่ไม่ได้ได้ต้องการแทรกเข้าไปใน table, เราอาจจำเป็นต้องเอาตัวแปร $_POST มาจัดการเสียก่อนดังนี้
เช่นตัวแปร $_POST ติด <input type='submit' name='confirmsubmit' value='ok'> มาด้วย เราก็ต้องเอา item confirmsubmit ออกจาก $_POST ก่อน แบบนี้
$myPost = $_POST;
unset($myPost['confirmsubmit']);
//แล้วก็
$this->db->insert('tableName', $myPost);
hope this help
|
|
|
|
|
Date :
2010-06-06 12:00:00 |
By :
pnbps |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แหมะ เทคนิคใหม่จริงๆครับ ขอบคุณครับ
|
|
|
|
|
Date :
2010-06-06 16:56:27 |
By :
Manussawin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมอ้างอิงจาก mr.win ครับง่ายต่อการแก้ bug นะครับ แต่ขอบคุณสำหรับความรู้ใหม่ครับ
|
|
|
|
|
Date :
2010-06-06 21:54:10 |
By :
sleepington |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เขียน $_POST และ $_GET ให้สั้นลงโดยใช้ฟังค์ชัน import_request_variables
บางคนอาจเคยเรียกใช้ตัวแปลแบบ $_POST และ $_GET และสามารถเขียนให้สั้นลงได้ด้วย ฟังค์ชัน import_request_variables
รูปแบบการใช้งาน
โค๊ด:
bool import_request_variables ( string $types [, string $prefix ] )
ตัวอย่างการใช้กับตัวแปลแบบ $_POST เช่น
โค๊ด:
import_request_variables("p", "P_"); วิธีการใช้งานก็แค่นำโค๊ดข้างบนนี้ไปใว้ในส่วนบนสุดของหน้าเพจที่ต้องการ เวลาที่เราจะเรียกใช้ตัวแปลแบบ $_POST["var"] เราก็แค่เรียกใช้ได้เป็น $P_var
ตัวอย่างการใช้กับตัวแปลแบบ $_GETเช่น
โค๊ด:
import_request_variables("g", "G_"); วิธีการใช้งานก็แค่นำโค๊ดข้างบนนี้ไปใว้ในส่วนบนสุดของหน้าเพจที่ต้องการ เวลาที่เราจะเรียกใช้ตัวแปลแบบ $_GET["var"] เราก็แค่เรียกใช้ได้เป็น $G_var
หรือจะใช้กับตัวแปลทั้งสองเลยก็ได้ดังตัวอย่างข้างล่าง
โค๊ด:
<?php
// This will import GET and POST vars
// with an "rvar_" prefix
import_request_variables("gp", "rvar_");
echo $rvar_foo;
?>
ศึกษาข้อมูลเพิ่มเติมได้จาก http://us3.php.net/manual/en/function.import-request-variables.php
จากเว็บ http://bc46.com/forum/index.php?topic=560.0
|
|
|
|
|
Date :
2010-08-22 19:52:24 |
By :
neosky |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณ neosky ครับ
แต่ใช้ $_POST $_GET $_REQUEST มันจะมองง่ายกว่า ยิ่งใช้ editor ที่มี php syntax highlighting จะง่ายกับการ debug กว่าการที่ใช้ในรูปแบบตัวแปรอย่างที่ท่านๆ ว่านะในความคิดผม
|
|
|
|
|
Date :
2010-08-22 21:19:36 |
By :
PlaKriM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณสำหรับความรู้ดีๆที่นำมาฝากกัน
|
|
|
|
|
Date :
2010-08-24 04:42:49 |
By :
smob00472 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|