ให้เรตสมาชิก: 3 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

บทที่ 16 HTML Forms   
  HTML Forms คือการสร้างฟอร์มใน html โดยฟอร์มที่ได้จะถูกใช้ในการส่งข้อมูลไปยังเซิฟเวอร์ แท็กที่ใช้ในการสร้างฟอร์มคือ แท็ก <form>
  ฟอร์มประกอบด้วยแท็ก input เช่น กรอบข้อความ (text fields), กล่องแบบเลือก (checkboxes),ปุ่มต่าง ๆ เป็นต้น โดยเราสามารถใส่รายการ, กรอบข้อความ(textarea), ฟิล์ดเซท (fieldset), เลเจนด์(legend) และแท็ก label  ซึ่งเราจะใช้แท็ก input ใช้ในการเก็บข้อมูลจากผู้ใช้งาน โดย แท็ก input สามารถสร้างได้หลายแบบ ขึ้นอยู่กับแอตทริบิวต์ type ดังนั้นแท็ก input สามารถเป็นกรอบข้อความ, กล่องตัวเลือก, กล่องรหัสผ่าน, ปุ่มส่งข้อมูล และ อื่น ๆ ซึ่งแท็ก input ที่ใช้บ่อย ๆ จะอธิบายต่อไป 
   1. กรอบข้อความ (Text fields)
    แท็ก input และแอตทริบิวต์ type="text" จะกำหนดการป้อนข้อความ 1 บรรทัด
ตัวอย่าง

<html>
<body>

<form>
ชื่อ: <input type="text" name="firstname"><br>
นามสกุล: <input type="text" name="lastname">
</form> 

</body>
</html>

ผลลัพธ์ที่ได้คือ

***แท็ก form จะไม่แสดงในเว็บเบราว์เซอร์ และขนาดของกรอบข้อความเริ่มต้นจะมีขนาด 20 ตัวอักษร
  
   2. กรอบรหัสผ่าน (Password fields)
   แท็ก input และแอตทริบิวต์ type="password" จะกำหนดการป้อนรหัสผ่าน
ตัวอย่าง

<html>
<body>

<form>
รหัสผ่าน: <input type="password" name="pwd">
</form> 

</body>
</html>

ผลลัพธืที่ได้คือ

***ตัวอักษรในกรอบรหัสผ่านจะแสดงเป็นดาวหรือจุด

   3. กล่องเลือกทางเดียว (Radio Buttons)
   แท็ก input และแอตทริบิวต์ type="radio" จะกำหนดกล่องเลือกแบบทางเดียว ซึ่งจะกำหนดให้ผู้ใช้งานสามารถได้เพียงตัวเลือกเดียวจากชุดของตัวเลือกทั้งหมด
ตัวอย่าง

<html>
<body>

<form>
<input type="radio" name="like" value="like">ชอบ<br>
<input type="radio" name="like" value="don'tlike">ไม่ชอบ
</form> 

</body>
</html>

ผลลัพธ์คือ

***จะเห็นว่าแอตทริบิวต์ name เป็นชื่อเดียวกัน เป็นการกำหนดให้กล่องเลือกแบบทางเดียวทั้งสองอันเป็นกล่องชุดเดียวกัน ดังนั้น ถ้ากำหนดแอตทริบิวต์ name แตกต่างกัน จะทำให้สามารถเลือกได้ทั้งสองอัน

   4. กล่องเลือกแบบหลายทาง (Check boxes)
   แท็ก input และแอตทริบิวต์ type="checkbox" จะกำหนดกล่องเลือกแบบหลายทาง ซึ่งผู้ใช้งานสามารถเลือกตัวเลือกได้มากกว่าหนึ่งตัวเลือกจากตัวเลือกทั้งหมด
ตัวอย่าง

<html>
<body>

<form>
<input type="checkbox" name="language" value="japanese">พูดภาษาญี่ปุ่นได้<br>
<input type="checkbox" name="language" value="english">พูดภาษาอังกฤษได้
</form> 

</body>
</html>

ผลลัพธ์ที่ได้คือ


   5. ปุ่มส่งข้อมูล (Submit Button)
   แท็ก input และแอตทริบิวต์ type="submit" จะกำหนดปุ่นสำหรับส่งข้อมูลไปยังเซิฟเวอร์ โดยข้อมูลจะส่งไปยังไฟล์ที่กำหนดในแอตทริบิวต์ action และไฟล์ที่ทำการรับข้อมูลจากฟอร์มนี้ จะทำบางสิ่งบางอย่างกับข้อมูลที่รับเข้าไป โดยมีวิธีการส่ง 2 แบบด้วยกัน (ผ่านแอตทริบิวต์ method)
    >>get - จะส่งข้อมูลเป็นข้อความต่อท้ายชื่อไฟล์ ซึ่งจะเห็นใน url ของเว็บเบราว์เซอร์
    >>post - จะส่งข้อมูลแบบซ่อนผ่านทางเบราว์เซอร์ซึ่งมีความปลอดภัยมากกว่า

<html>
<body>

<form name="login" action="login.php" method="post">

ชื่อ :<input type="text" name="username"/>
รหัสผ่าน :<input type="passwordt" name="pwd"/>
<input type="submit" value="เข้าระบบ"/>

</form>  

</body>
</html>

ผลลัพธ์ที่ได้คือ

Tag ที่เกี่ยวข้อง

<form> กำหนดฟอร์มเพื่อส่งข้อมูลไปยังเซิร์ฟเวอร์
<input/> กำหนดการป้อนข้อมูล
<textarea> กำหนดการป้อนข้อความแบบหลายบรรทัด
<label> กำหนดป้ายชื่อแท็ก input
<fieldset> กำหนดขอบเขตของการป้อนข้อมูล
<legend> กำหนดป้ายชื่อสำหรับขอบเขตของการป้อนข้อมูล(fieldset)
<select> กำหนดรายการที่ให้เลือก(แบบ Drop-down)
<optgroup> กำหนดกลุ่มของตัวเลือก(options) ที่เกี่ยวข้องในรายการที่ให้เลือก
<option> กำหนดตัวเลือกสำหรับรายการที่ให้เลือก
<button> กำหนดปุ่มกด

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
OpenStreetMap คืออะไร
โดย chaiyasitpraphut พฤ 14 พ.ย. 2019 4:51 pm บอร์ด PHP Knowledge
0
28
พฤ 14 พ.ย. 2019 4:51 pm โดย chaiyasitpraphut
Data Flow Diagram คืออะไร
โดย chaiyasitpraphut พฤ 14 พ.ย. 2019 4:29 pm บอร์ด SQL Knowledge
0
37
พฤ 14 พ.ย. 2019 4:29 pm โดย chaiyasitpraphut
Sonoff คืออะไร
โดย chaiyasitpraphut พฤ 14 พ.ย. 2019 4:07 pm บอร์ด IOT - Internet of things
0
32
พฤ 14 พ.ย. 2019 4:07 pm โดย chaiyasitpraphut
ขั้นตอนการสมัคร NETPIE
โดย chaiyasitpraphut พฤ 14 พ.ย. 2019 3:56 pm บอร์ด IOT - Internet of things
0
21
พฤ 14 พ.ย. 2019 3:56 pm โดย chaiyasitpraphut
Collapsible Forum Categories : สำหรับย่อ - ขยาย หมวดหมู่ฟอรั่ม
โดย thatsawan ส 09 พฤษภาคม 2015 1:38 pm บอร์ด phpBB 3.1 Extension Review
1
885
พฤ 14 พ.ย. 2019 3:37 pm โดย thatsawan
ทำไม่พอขึ้นบรรทัดใหม่แล้วตัวอัษรถึงซ้อนกันครับ
โดย jamepiyawat พฤ 14 พ.ย. 2019 2:19 pm บอร์ด HTML CSS
2
48
พฤ 14 พ.ย. 2019 2:31 pm โดย jamepiyawat
Work's on Hand ชัยยะสิทธิ์ พระพุทธ MT35
โดย chaiyasitpraphut จ 11 พ.ย. 2019 10:46 am บอร์ด MT35 - นายชัยยะสิทธิ์ พระพุทธ
1
19
พฤ 14 พ.ย. 2019 1:39 pm โดย chaiyasitpraphut
ทฤษฎีสี 60-30-10
โดย numtan5839 พฤ 14 พ.ย. 2019 12:30 pm บอร์ด Graphic design
0
27
พฤ 14 พ.ย. 2019 12:30 pm โดย numtan5839
คำนวณการรับส่งข้อมูลผ่านอินเทอร์เน็ต
โดย chaiyasitpraphut พฤ 14 พ.ย. 2019 11:29 am บอร์ด MindPHP News / Feedback
0
37
พฤ 14 พ.ย. 2019 11:29 am โดย chaiyasitpraphut
แก้ไวรัสซ่อนไฟล์ง่ายๆ ด้วย CMD
โดย teenproza7 พ 15 พฤษภาคม 2019 5:37 pm บอร์ด Share Knowledge
1
187
พฤ 14 พ.ย. 2019 11:27 am โดย LEG
ตรวจสอบอายุการใช้งานของ โดเมน
โดย chaiyasitpraphut พฤ 14 พ.ย. 2019 11:05 am บอร์ด MindPHP News / Feedback
0
31
พฤ 14 พ.ย. 2019 11:05 am โดย chaiyasitpraphut
สร้างไฟล์ PDF โดยไม่ต้องลงโปรแกรม
โดย chaiyasitpraphut พฤ 14 พ.ย. 2019 10:43 am บอร์ด MindPHP News / Feedback
0
47
พฤ 14 พ.ย. 2019 10:43 am โดย chaiyasitpraphut
ชอบ Feature นี้ของ Joomla ตัวช่วยตรวจสอบ โครงสร้างตารางเวลามีการอัพเกรด
โดย mindphp พ 13 พ.ย. 2019 8:41 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
0
144
พ 13 พ.ย. 2019 8:41 pm โดย mindphp
งานประจำวันที่ 13 พฤศจิกายน 2562
โดย numtan5839 พ 13 พ.ย. 2019 10:09 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
5
35
พฤ 14 พ.ย. 2019 10:53 am โดย numtan5839
Generate QR Code
โดย chaiyasitpraphut พ 13 พ.ย. 2019 7:03 pm บอร์ด MindPHP News / Feedback
0
119
พ 13 พ.ย. 2019 7:03 pm โดย chaiyasitpraphut
การใช้ CSS selectors เพื่ออ้างอิง h1 tag ที่อยุ่ข้างใน div
โดย bankjittapol พ 13 พ.ย. 2019 6:49 pm บอร์ด CSS Knowledge
1
99
พ 13 พ.ย. 2019 6:52 pm โดย mindphp
ประโยชน์ของ IOT - internet of things
โดย chaiyasitpraphut พ 13 พ.ย. 2019 6:49 pm บอร์ด IOT - Internet of things
0
71
พ 13 พ.ย. 2019 6:49 pm โดย chaiyasitpraphut
วิธีการเพิ่ม css ให้กับ class โดยใช้ js
โดย Ittichai_chupol พ 13 พ.ย. 2019 6:41 pm บอร์ด Jquery & Ajax Knowledge
0
76
พ 13 พ.ย. 2019 6:41 pm โดย Ittichai_chupol
ติดตั้ง Broad ESP8266 ลงบน Arduino IDE
โดย chaiyasitpraphut พ 13 พ.ย. 2019 6:37 pm บอร์ด IOT - Internet of things
0
52
พ 13 พ.ย. 2019 6:37 pm โดย chaiyasitpraphut
ทำไมตั้งค่าเมล แบบ POP3 ใน Android ไม่ได้ครับ
โดย chatee supasand พ 13 พ.ย. 2019 6:29 pm บอร์ด Mobile Programming - Android, iOS, Window Phone
2
131
พ 13 พ.ย. 2019 7:01 pm โดย chatee supasand