ให้เรตสมาชิก: 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> กำหนดปุ่มกด

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
อยากทราวิธีการ ระบุ ค่าสี ใน <a></a> เฉพาะที่ต้องการค
โดย Ittichai_chupol ส 18 พฤษภาคม 2019 7:35 pm บอร์ด HTML CSS
2
13
ส 18 พฤษภาคม 2019 7:39 pm โดย mindphp
สร้าง Report แบบง่ายด้วย Python + RML
โดย teenproza7 ส 18 พฤษภาคม 2019 7:03 pm บอร์ด Python Knowledge
2
23
ส 18 พฤษภาคม 2019 7:35 pm โดย mindphp
เคล็ดลับ วิธีแก้ขอบตาดำคล้ำแบบธรรมชาติ หมดปัญหาตาดำเป็นหมีแพนด้า
โดย teenproza7 ส 18 พฤษภาคม 2019 5:24 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
6
ส 18 พฤษภาคม 2019 5:24 pm โดย teenproza7
RML กับ Python ใช้งานร่วมกันยังไง
โดย teenproza7 ส 18 พฤษภาคม 2019 4:34 pm บอร์ด Programming - C/C++ & java & Python
11
52
ส 18 พฤษภาคม 2019 7:26 pm โดย thatsawan
เคล็ดลับแก้อาการนอนไม่หลับ
โดย teenproza7 ส 18 พฤษภาคม 2019 4:17 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
5
ส 18 พฤษภาคม 2019 4:17 pm โดย teenproza7
วิธีแก้ง่วง ง่วงนอน นอนน้อย แต่นอนนะ
โดย teenproza7 ส 18 พฤษภาคม 2019 4:10 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
4
ส 18 พฤษภาคม 2019 4:10 pm โดย teenproza7
วิธีชาร์จแบตมือถือ แบบผิดๆที่บอกต่อๆกันมา
โดย teenproza7 ส 18 พฤษภาคม 2019 4:01 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
4
ส 18 พฤษภาคม 2019 4:01 pm โดย teenproza7
เคล็ดลับบำรุงสายตา
โดย teenproza7 ส 18 พฤษภาคม 2019 3:38 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
6
ส 18 พฤษภาคม 2019 3:38 pm โดย teenproza7
สอบถามวิธีการเขียน Python เพื่อ สร้างไฟล์ XML หน่อยครับ
โดย teenproza7 ส 18 พฤษภาคม 2019 3:10 pm บอร์ด Programming - C/C++ & java & Python
1
7
ส 18 พฤษภาคม 2019 3:12 pm โดย thatsawan
ต้องการปิดไม่ให้ browser รับ cookie อย่างไงค่ะ
โดย thatsawan ส 18 พฤษภาคม 2019 2:47 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
5
ส 18 พฤษภาคม 2019 3:02 pm โดย thatsawan
งานประจำวันที่ 18 พฤษาคม 2562
โดย teenproza7 ส 18 พฤษภาคม 2019 9:44 am บอร์ด M082 - ยศนันท์ ปันคำ
1
7
ส 18 พฤษภาคม 2019 9:45 am โดย teenproza7
ของเดิมแต่เพิ่มความสามารถใหม่ด้วย Override Python
โดย teenproza7 ศ 17 พฤษภาคม 2019 6:11 pm บอร์ด Python Knowledge
0
13
ศ 17 พฤษภาคม 2019 6:11 pm โดย teenproza7
เงินได้ประเภทที่ 5 คืออะไร
โดย สริญญา สมสา ศ 17 พฤษภาคม 2019 5:28 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
9
ศ 17 พฤษภาคม 2019 5:28 pm โดย สริญญา สมสา
เช็ค Spec คอมแบบง่ายๆ ด้วย dxdiag
โดย teenproza7 ศ 17 พฤษภาคม 2019 5:15 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
10
ศ 17 พฤษภาคม 2019 5:15 pm โดย teenproza7
มารู้จักโปรแกรมเมอร์คนแรกของโลกกันเถอะ
โดย teenproza7 ศ 17 พฤษภาคม 2019 4:54 pm บอร์ด Share Knowledge
0
12
ศ 17 พฤษภาคม 2019 4:54 pm โดย teenproza7
เงินได้ประเภทที่ 4 คืออะไร
โดย สริญญา สมสา ศ 17 พฤษภาคม 2019 4:48 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
15
ศ 17 พฤษภาคม 2019 4:48 pm โดย สริญญา สมสา
บีบอัดไฟล์ให้เล็กลง ด้วย ZIP
โดย teenproza7 ศ 17 พฤษภาคม 2019 4:44 pm บอร์ด Share Knowledge
0
10
ศ 17 พฤษภาคม 2019 4:44 pm โดย teenproza7
สืบทอดความสามารถจากพ่อและแม่ใน Python OOP
โดย teenproza7 ศ 17 พฤษภาคม 2019 3:33 pm บอร์ด Python Knowledge
0
19
ศ 17 พฤษภาคม 2019 3:33 pm โดย teenproza7
เมื่อถูกสลากกินเเบ่งรัฐบาลจะต้องเสียภาษีหรือไม่
โดย สริญญา สมสา ศ 17 พฤษภาคม 2019 2:54 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
10
ศ 17 พฤษภาคม 2019 2:54 pm โดย สริญญา สมสา
จะตัดคำในประโยคภาษาไทยยังไงไม่ให้มันเป็น เครื่องหมายสี่เหลี่ยม
โดย thatsawan ศ 17 พฤษภาคม 2019 2:54 pm บอร์ด Programming - PHP
0
12
ศ 17 พฤษภาคม 2019 2:54 pm โดย thatsawan