โดยปกติแล้วข้อมูลที่รับผ่านแบบฟอร์มที่ถูกต้องมานั้น จะต้องถูกส่งไปประมวลผลด้วย PHP อีกทีที่เซิร์ฟเวอร์ เพื่อผลลัพธ์ที่ถูกต้อง ดังนั้นแล้วเราต้องเขียนโค้ดในการรันข้อมูลจากฟอร์มหน้าเบราว์เซอร์ส่งไปประมวลผลแบบ PHP อีกครั้ง ซึ่งเราต้องใช้ property “method” ในการดูว่าข้อมูลที่ส่งมานั้นเป็นแบบใด เพื่อนำไปประมวลผลได้ถูกต้อง โดย method หลักๆ จะมี “POST” และ “GET” ดังรายละเอียดนี้
การอ่านข้อมูลที่ส่งมาด้วย method “GET”
ถ้าข้อมูลที่ส่งมานั้นเป็นเมธอด “GET” เราจะอ่านข้อมูลด้านเซิฟเวอร์ด้วยตัวแปร $_GET ซึ่งเขียนดังนี้ $_GET[‘name’] โดยที่ ‘name’ คือชื่ออินพุด หรือ property/attribute ของอินพุตที่เราต้องการอ่านข้อมูล เช่น หากในฟอร์มนั้นๆเรากำหนดชื่อ input เป็น “Keyword” การอ่านข้อมูลก็ต้องไป get keyword ดังนี้ $_GET[‘Keyword’]; อย่างไรก็ตามหากเราลืม หรือในฟอร์มไม่มีการระบุ method เอาไว้ ตัวเบราเซอร์จะเลือก method GET ไว้ให้อัตโนมัติ เป็นค่าดีฟอลต์
การอ่านข้อมูลที่ส่งเป็น method “POST”
หากข้อมูลที่ส่งเข้ามานั้นเป็น POST เราจะอ่านข้อมูลทางด้านเซิฟเวอร์ด้วย $_POST ในรูปแบบ $_POST[‘ชื่ออินพุด’] เหมือนๆกันกับ GET เช่น หากเป็นอินพุด “login” ก็จะอ่านโดย $_POST[‘login’]; แบบนี้
อย่างไรก็ดี ในบางครั้งเราอาจจะไม่รู้ว่า method ที่ส่งข้อมูลมานั้นเป็น method ใด รวมไปถึงเป็นการทำงานแบบไดนามิกที่ไม่อาจกำหนด method ล่วงหน้าได้ว่าจะส่งข้อมูลแบบ method ใดมา จึงต้องมีตัวแปรช่วยในการเช็ค ตรวจสอบเมธอด ดังนี้
$method = $_SERVER[‘REQUEST_METHOD’];
if($method == “GET”) {
$x = $_GET[‘x’];
} else if ($method == “POST”){
$x = $_POST[‘x’];
}
การอ่านข้อมูลจากอินพุตชนิดข้อความ
อินพุตประเภทข้อความมีหลากหลายแบบ เช่น text, password, textarea, hidden เป็นต้น ซึ่งล้วนแล้วแต่เป็น input ที่สำคัญ การอ่านข้อมูลจากอินพุตเหล่านี้ จะอ่านจาก $_GET หรือ $_POST ตามแต่ method ที่ได้รับเข้ามา และจะได้ผลลัพธ์เป็นข้อมูลที่ใส่ลงไปใน input โดยหากเป็น hidden ก็จะเป็นข้อมูลที่เรากำหนดให้แก่ property value แทน
ตัวอย่าง
code ใน form แสดงผลฝั่ง browser
<input type=”text” name=”login” />
<input type=”password” name=”pswd” />
<textarea name=”msg” cols=”30″ rows=”2″></textarea>
<input type=”hidden” name=”code” value=”123″ />
ทีนี้ฝั่งเซิฟเวอร์ก็จะอ่านข้อมูลเป็นอย่างไร เรามาดูกัน หากสมมุติว่าเป็นการส่งข้อมูลด้วย method POST
$login = $_POST[‘login’];
$password = $_POST[‘pswd’];
$password_memo = $_POST[‘msg’];
$code = $_POST[‘code’];