4. Introduction
2
เครื่องมือที่ใช้ในการอบรม
ซอฟต์แวร์ระบบเว็บเซิร์ฟเวอร์
Xampp : ประกอบไปด้วยโปรแกรมหลักๆ คือ
PHP
Apache Web Server
MySQL
PHPmyadmin
ซอฟต์แวร์เขียน code
Sublime Text
Notepad++
หรือตัวใดที่ก็ได้ที่ชอบ
เนื้อหาอบรม
วันที่ รอบ รายละเอียด
Day1 เช้า HTML Element
• Tag
• Table & Form
บ่าย PHP1
• Variable, basic operators and form
methods)
• Conditions and loop
Day2 เช้า PHP2
• Functions
• Cookies and sessions
บ่าย Bootstrap
• Bootstrap and AdminLTE Template
วันที่ รอบ รายละเอียด
Day3 เช้า MySQL
• Introduction SQL
• select..from..where
บ่าย SQL Aggregate Function and Subquery
• SQL commands (insert, update and delete)
• SQL Aggregate Function
• SUBQUERY
Day4 เช้า SQL join tables and PHP - MySQL Connection
• join tables
• PHP - MySQL Connection
บ่าย Web Blog Implementation
5. 1
HTML elements – Table & Form
HTML elements
Table & Form
อบรมเชิงปฏิบัติการ “การสร้างเว็บไซต์ด้วยภาษา PHP และ ภาษา SQL”
Asst. Prof. Dr. Pinanta Chatwattana [Department of Electronics Engineering Technology, CIT, KMUTNB]
Mr.Watcharapong Wongwiwat (Manager, PhanakornSoft Co, Ltd.)
Checklist
ติดตั้ง Xampp
หลังจากติดตั้งเสร็จแล้ว ลองใช้เบราว์เซอร์เปิด
http://localhost หรือ http://127.0.0.1
ติดตั้ง Sublime text (หรือ text editor ที่ชอบ)
สร้างไฟล์ใหม่พิมพ์ Hello World แล้วบันทึกเป็น hello.html
Copy ไฟล์นี้ไปที่ไดเร็กทรอรี htdocs ของ xampp
เปิดเบราว์เซอร์
http://localhost/hello.html หรือ http://127.0.0.1/hello.html
6. 2
HTML elements – Table & Form
HTML Introduction
030513342-Dynamic Web Programming
Asst. Prof. Dr. Pinanta Chatwattana [Department of Electronics Engineering Technology]
HTML คืออะไร
HTML คือ ภาษา markup ที่ใช้ในการอธิบายเอกสารในรูปแบบเว็บ
Hyper Text Markup Language
ภาษา markup คือ ภาษาที่ใช้ markup tags เป็นองค์ประกอบ
ใน HTML เอกสารก็จะถูกอธิบายด้วย HTML tags
7. 3
HTML elements – Table & Form
HTML คืออะไร
เป็นภาษามาร์กอัปหลักในปัจจุบันที่ใช้ในการสร้างเว็บเพจ หรือข้อมูลอื่นที่เรียกดูผ่านทางเว็บเบราว์เซอร์
ตัวโค้ดจะแสดงโครงสร้างของข้อมูลในการแสดง หัวข้อ ลิงก์ ย่อหน้า รายการ รวมถึงการสร้างแบบฟอร์ม
เชื่อมโยงภาพหรือวิดีโอด้วย
โครงสร้างของภาษา HTML จะอยู่ในลักษณะภายในเครื่องหมาย < (less than) และเครื่องหมาย > (greater
than)
นามสกุลของไฟล์ทั่วไปจะใช้ .htm หรือ .html
ความสามารถของภาษา HTML
เป็นภาษาหลักที่ใช้ในการแสดงผลบนเว็บบราวเซอร์ โดยสามารถนาเสนอข้อมูลตัวอักษร รวมทั้งเชื่อมต่อเพื่อ
แสดงภาพ, เสียง และไฟล์ในรูปแบบอื่นๆ
สร้างโดยใช้โปรแกรม Text Editor ต่างๆ เช่น Notepad, Edit Plus หรืออาศัยโปรแกรมที่เป็นเครื่องมือ
ช่วยสร้างเว็บเพจ เช่น Microsoft FrontPage, Dreamweaver เป็นต้น
เรียกใช้งานหรือทดสอบการทางานของเอกสาร HTML โดยใช้โปรแกรม web browser เช่น IE Microsoft
Internet Explorer (IE), Mozilla Firefox, Safari, Opera, และ Netscape Navigator เป็นต้น
8. 4
HTML elements – Table & Form
การทางานของเว็บไซต์
Client
(Web Browser)
Server
(Web Server)
HTTP Request
HTTP Reply
(HTML, ภาพ, etc)
โครงสร้างภาษา HTML
9. 5
HTML elements – Table & Form
HTML tags (element)
HTML tags คือ คาเฉพาะ (keyword) ที่อยู่ภายในวงเล็บแหลม
<tagname> เนื้อหา </tagname>
HTML tags ส่วนใหญ่จะมาเป็นคู่
<tagname> จะเรียกว่า tag เปิด และส่วนใหญ่จะมาคู่กับ
</tagname> ที่เรียกว่า tag ปิด โดยจะมี / อยู่หน้า tagname
ตัวอย่าง HTML tags
<h1> Hello World </h1>
<title> My First Web </title>
<br> หรือ <br/>
HTML tags นั้น case-insensitive
หมายความว่า จะใช้
<Title>, <TITLE>, หรือ <TiTle> ก็ได้
ตัวอย่าง HTML
DOCTYPE ใช้นิยามว่าเอกสารนี้คือ HTML
<html> .. </html> ใช้คลุมเอกสาร HTML
<head> .. </head> ให้ข้อมูลเพิ่มเติมเกี่ยวกับเอกสาร
<title> .. </title> ใช้กาหนดหัวข้อของเอกสาร
<body> .. </body> ใช้กาหนดเนื้อหาของเอกสาร
<h1> .. </h1> ทาให้ข้อความเป็นหัวข้อแบบ heading
<p> .. </p> ใช้แสดงย่อหน้าของข้อความ
<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>
<body>
<h1>This is a heading</h1>
<p>This is a paragraph.</p>
<p>This is another paragraph. </p>
</body>
</html>
มาทดลอง เขียนกันเลย !!
10. 6
HTML elements – Table & Form
HTML Attributes
HTML elements สามารถที่จะมี attributes ได้
Attribute จะเป็นตัวให้ข้อมูลเสริมกับ element นั้นๆ
ปกติแล้ว attribute จะเขียนใน tag เปิด
Attribute จะอยู่ในรูปแบบคู่ ชื่อ = “ค่า”
ตัวอย่าง
<p title = “Hello”> </p>
<img src = “.........” width = “.........” height = “.........”>
HTML Heading (1)
ใช้สาหรับทาหัวข้อ โดยจะมีให้ใช้ตั้งแต่ <h1> จนถึง
<h6> ซึ่ง
<h1> จะมีขนาดตัวอักษรของหัวข้อที่ใหญ่ที่สุด และ
<h6> มีขนาดตัวอักษรของหัวข้อที่เล็กที่สุด
ข้อความที่อยู่ภายใน tag จะถูกแสดงบนหน้าเว็บ
พร้อมกับขึ้นบรรทัดใหม่
<!DOCTYPE html>
<html>
<body>
<h1>Heading H1</h1>
<h2>Heading H2</h2>
<h3>Heading H3</h3>
<h4>Heading H4</h4>
<h5>Heading H5</h5>
<h6>Heading H6</h6>
Normal Text.
</body>
</html>
11. 7
HTML elements – Table & Form
HTML Heading (2)
การเขียนเส้นคั่นบรรทัด ใน HTML จะใช้
<hr>
<!DOCTYPE html>
<html>
<body>
<h1>Hello World h1</h1>
<hr>
<h2>Hello World h2</h2>
</body>
</html>
HTML Heading (3)
HTML <head> element
ใช้สาหรับกาหนดข้อมูลเพิ่มเติมให้กับเอกสาร HTML เช่น
การกาหนด title (หัวข้อ) ให้กับเอกสาร <title>
การกาหนดภาษาที่ใช้ในการแสดงผล <meta>
ใช้อ้างอิงถึง CSS <style>, <link>
<!DOCTYPE html>
<html>
<body>
สวัสดีชาวโลก :)
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
สวัสดีชาวโลก :)
</body>
</html>
12. 8
HTML elements – Table & Form
HTML Paragraphs
ใช้สาหรับทาย่อหน้าของเอกสาร ด้วย tag <p>.........</p> โดยข้อความที่อยู่ภายใน tag จะแสดงออกบนหน้า
เว็บ และจะขึ้นย่อหน้าใหม่ให้กับเอกสาร
<!DOCTYPE html>
<html>
<body>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>
Normal Text.
</body>
</html>
HTML Display
ในภาษา HTML นั้น ถึงแม้ว่าข้อความจะมี การขึ้นบรรทัดใหม่ เว้นช่องว่างมากขนาดนั้น ในการแสดงผล
ของ HTML นั้นจะเปลี่ยนเป็นช่องว่างเดียว <!DOCTYPE html>
<html>
<body>
<p>
Testing HTML
display on
web browser
</p>
<p>
Testing HTML display
on web
browser
</p>
</body>
</html>
13. 9
HTML elements – Table & Form
HTML Line Break
ในเมื่อไม่สามารถจะทาให้ข้อความมีการขึ้นบรรทัดใหม่ได้ด้วยวิธีปกติ ดังนั้นจึงต้องใช้ HTML element
<br>
<!DOCTYPE html>
<html>
<body>
<p>
Testing HTML<br>
display on <br>web browser
</p>
</body>
</html>
HTML Pre-formatted Text
ถ้าต้องการให้ HTML แสดงผลเหมือนตามที่เขียนใน HTML เลย สามารถใช้ <pre> element แต่รูปแบบของ
ตัวหนังสือจะเป็นแบบ fixed-width font ที่ถูกกาหนดเอาไว้ก่อนแล้ว
<pre> ............ </pre> <!DOCTYPE html>
<html>
<body><pre> … </pre>
<pre>
Testing HTML
display on
web browser
</pre>
</body>
</html>
14. 10
HTML elements – Table & Form
HTML Styles (1)
เอกสาร HTML ปกติแล้วจะเป็นตัวอักษรสีดา บนพื้นหลังสีขาว แต่สามารถเปลี่ยนแปลงได้ด้วยการใช้ attribute style
มีรูปแบบคือ style=“property : value” (CSS property)
ตัวอย่าง :
สีพื้นหลังของหน้าเว็บ
<body style=“background-color : lightgrey”>
สีตัวอักษร
<h1 style=“color : blue”>This is h1</h1>
<p style=“color : red”>Paragraph.</p>
HTML Styles (1)
รูปแบบตัวอักษร
<p style=“font-family : verdana”>Paragraph.</p>
ขนาดตัวอักษร
<p style=“font-size : 160%”>Paragraph.</p>
การจัดวางตัวอักษร
<p style=“text-align : center”>Paragraph.</p>
15. 11
HTML elements – Table & Form
HTML Styles (2)
ถ้าต้องการให้มี style หลายแบบผสมกัน สามารถเชื่อมกันได้ด้วย ;
<!DOCTYPE html>
<html>
<body style="background-color:lightgrey">
<h1 style="color:blue">This is h1</h1>
<p style="color:red">Paragraph.</p>
<p style="font-family:verdana">Paragraph.</p>
<p style="font-size:160%">Paragraph.</p>
<p style="text-align:center">Paragraph.</p>
<p style="font-size:160%;color:green;text-align:center">Paragraph.</p>
</body>
</html>
HTML Colors
สีใน HTML มีวิธีระบุได้ 3 วิธี
เป็นค่าเลขฐานสิบหก
#RRGGBB (RR, GG, BB ใช้ฐานสิบหก 2 หลักของแต่ละแม่สี 00-FF)
เป็นค่า RGB
rgb(r, g , b) (r, g, และ b ใช้เลขฐานสิบ 0-255)
เป็นชื่อสี
รอบรับ 140 ชื่อสี http://www.w3schools.com
/html/html_colornames.asp
16. 12
HTML elements – Table & Form
HTML Text Formatting (1)
นอกการจากใช้ attribute style แล้ว ยังมี tag พิเศษสาหรับจัดการกับรูปแบบตัวอักษรอีก
ตัวหนา ใช้ <b>......</b> หรือ <strong>......</strong>
ตัวเอียง ใช้ <i>......</i> หรือ <em>......</em>
ปรับขนาดตัวอักษรเล็กลง <small> ...... </small>
Highlight ข้อความ <mark> ...... </mark>
ขีดเส้นฆ่าข้อความ <del> ...... </del>
ขีดเส้นใต้ข้อความ <ins> ...... </ins>
ข้อความห้อย (subscript) <sub> ...... </sub>
ข้อความยก (superscript) <sup> ...... </sup>
HTML Text Formatting (2)
ตัวอย่าง
<!DOCTYPE html>
<html>
<body>
This text is <b>Bold</b>. <br>
<i>Itallic</i>
<h1>Heading <small>text</small> title</h1>
This is <mark>important</mark>.<br>
<del>HTML</del> <ins>HTML5</ins> is good.<br>
X<sub>1</sub> = A<sup>2</sup> + B<sup>5</sup><br>
Combine <b><i>Text</i></b>,
<mark><ins>it's up to you</ins></mark>
</body>
</html>
17. 13
HTML elements – Table & Form
HTML Comments
การ comment ใน HTML จะเป็นข้อความที่อยู่ระหว่าง
<!-- ............ --> <!DOCTYPE html>
<html>
<body>
<!-- <p>Hello 2</p> -->
<p>Hello 2</p>
<!-- this is a
multiple lines
comment
-->
</body>
</html>
HTML Style - CSS
CSS (Cascading Style Sheets)
Inline - ใช้ attribute style ใน HTML elements
<h1 style=“color : blue”>Blue heading</h1>
Internal - ใช้ <style> element ในส่วนของ <head>
<head>
<style> body {background-color : green} h1{color : blue}</style>
</head>
19. 15
HTML elements – Table & Form
HTML Block Element
Block element คือ ปกติจะเริ่มต้น และสิ้นสุดด้วยการขึ้นบรรทัดใหม่ เช่น <h1>, <p>, <ul>, <table> เป็นต้น
Inline element คือ element ที่จะไม่ขึ้นบรรทัดใหม่หลังจากจัดเอกสาร เช่น <b>, <td>, <a>, <img> เป็นต้น
<div> ......... </div> เป็น block element ที่จริงๆ แล้วไม่มีหน้าที่พิเศษใดๆ แต่จะใช้ครอบชุดเอกสารบางอย่าง แล้วใช้ style และ
id, class เพื่อมาควบคุมการทางานอีกที
<div style=“background-color:black;color:white”>
<h1>Hello World</h1>
This is an example.
</div>
<span> ......... </span> เป็น inline element ไม่มีหน้าที่พิเศษ และทางานคล้ายกับ <div>
<h1>This is <span style=“color:red”>Important</span></h1>
HTML Images (1)
เอกสาร HTML สามารถแสดงรูปภาพได้ด้วย tag
<img src=“ชื่อและที่อยู่รูป ” alt=“ข้อความ ” width=“ความกว้างของรูป ” height=“ความสูงของรูป ”>
<img src= “cit.jpg“ alt=“CIT-LOGO” width=“40”
height =“40”>CIT LOGO
<img src= “cit.jpg“ alt=“CIT-LOGO”>CIT LOGO
ในกรณีที่ไม่เจอรูปภาพ
ในกรณีที่เจอรูปภาพ
20. 16
HTML elements – Table & Form
HTML Images (2)
ความกว้างกับความสูงของภาพสามารถใช้ style attribute ได้
ซึ่งจะแนะนามากกว่าการใช้ width, height attribute โดยตรง เพราะอาจจะถูก CSS ปรับขนาดได้ในภายหลัง
<img src=“............” style=“width:100px;height:100px”>
Property ใน style ของ img ที่อาจจะได้ใช้
border เพิ่มกรอบให้กับรูปภาพ
float เช่น float:right; float:left ให้ภาพลอยอยู่ด้านขวาหรือซ้าย
HTML Links (1)
ในเอกสาร HTML สามารถที่จะทา link เพื่อเข้าไปยังเว็บอื่นๆ ได้ ด้วย
<a href = “URL ของ link ”> ข้อความที่จะแสดง </a>
<!DOCTYPE html>
<html>
<body>
<a href= "http://www.google.com">Link to Google</a>
</body>
</html>
21. 17
HTML elements – Table & Form
HTML Links (2)
การเปลี่ยนสีให้กับ link จะใช้ style เช่น
<style>
a:link {color:#000000; background-color:transparent; text-decoration:none}
a:visited {color:#000000; background-color:transparent; text-decoration:none}
a:hover {color:#ff0000; background-color:transparent; text-decoration:underline}
a:active {color:#ff0000; background-color:transparent; text-decoration:underline}
</style>
a:link คือสถานะของ link
a:hover คือ สถานะ link เมื่อเอาเมาส์ไปแตะ
a:active คือ สถานะเมื่อ link หน้านั้นถูกเปิดอยู่
a:visited คือ สถานะ link ที่ถูกเปิดและปิดไปแล้ว
HTML Links (2)
การกาหนดเป้าหมายของ link
ใช้ attribute target เช่น <a href= “..........” target=“_blank”> .......... </a>
22. 18
HTML elements – Table & Form
HTML Links (3)
การใช้รูปภาพเป็น link
<a href= “.............”> <img src = “.............”> </a>
การใช้ attribute : id
<a id=“tips”>Tip Section</a> สร้างหัวข้อ
<a href=“#tips”>Go to Tip Section</a> กด link หาหัวข้อ
** พักครึ่งกันซักนิด **
23. 19
HTML elements – Table & Form
HTML Tables & Forms
ทบทวน HTML
HTML (Hyper Text Markup Language) คือ ภาษา markup ที่ใช้ในการอธิบายเอกสารในรูปแบบเว็บ
ทบทวนความจา tag ต่างๆ เหล่านี้ใช้ทาอะไร
<br>
<a href=“elec.html”>Hello</a>
<img src=“mypic.jpg”>
<h3>
<i>Hello</i>
<b>Welcome</b>
29. 25
HTML elements – Table & Form
HTML <textarea>
<form>
<textarea name="message" rows="10" cols="30">
The cat was playing in the garden.
</textarea>
</form>
การส่งค่าในฟอร์มไปประมวลผล
การใช้ภาษา HTML เป็นเพียงแค่การสร้างหน้าเว็บ
ข้อมูลต่างๆ ที่กรอกในฟอร์มนั้น สามารถจะนาไปประมวลผลที่ Backend ด้วยภาษา PHP ได้ (จะขอกล่าวถึงใน
ภายหลัง)
การที่จะให้ฟอร์มสามารถส่งค่าได้นั้น จาเป็นต้องมี attribute ของ FORM
30. 26
HTML elements – Table & Form
การส่งค่าในฟอร์มไปประมวลผล
ตัวอย่าง
<form name=“myform” action=“dest.html” method=“get”>
name คือ ชื่อของฟอร์ม ไม่ค่อยมีความสาคัญเท่าไรแล้ว
action คือ หน้าเว็บที่ใช้สาหรับรับข้อมูลที่กรอกในแบบฟอร์ม
method คือ รูปแบบการส่งข้อมูลไปยังหน้าเว็บที่ใช้สาหรับรับข้อมูล มีด้วยกันหลักๆ 2 วิธี
GET
POST
GET และ POST
GET
ค่าที่เราใส่เข้าไปจะถูกแสดงใน URL ของหน้าใน action
ทาให้มีความไม่ปลอดภัยถ้าค่าที่จะส่งอีกหน้าเป็น
password เพราะจะถูกแสดงใน URL
แต่จะทาให้สามารถทา bookmark ได้
POST
ค่าที่ใส่ใน form จะไม่ถูกแสดงใน URL ของหน้าใน action
ทาให้มีความปลอดภัยในข้อมูลที่ส่งระหว่างหน้าเว็บ
แต่จะไม่สามารถทา bookmark ได้
31. 27
HTML elements – Table & Form
ปุ่มสาหรับส่งแบบฟอร์ม (Submit)
<input type=“submit” value=“ตกลง”>
HTML element นี้จะต้องอยู่ภายใน <form> .............. </form> เพื่อส่งข้อมูลในฟอร์มนั้นไปยังหน้าเว็บปลายทาง
<form action=“b.html” method=“post”>
Name : <input type=“text” name=“n”> <br>
<input type=“submit” value=“confirm”>
</form>
HTML <Field Set>
สาหรับสร้างฟอร์มที่มีขอบให้กับข้อมูลและมีหัวข้อทาให้อ่านข้อมูลได้ง่ายขึ้น
<html><body>
<fieldset>
<legend>
กรุณากรอกข้อมูล:
</legend>
<form>
ชื่อ <input type="text" size="20">
อายุ <input type="text" size="2">
</form>
</fieldset></body></html>
32. 28
HTML elements – Table & Form
HTML input เพิ่มเติม สาหรับ HTML5
type=“number” สาหรับใช้รับค่าตัวเลขเท่านั้น
<input type=“number” min=“1” max=“5”>
type=“date” สาหรับใช้รับค่าวันที่
<input type=“date” name=“bday” >
type=“color” สาหรับใช้รับค่าสี
type=“range” สาหรับแสดงเป็น slide bar ค่าย่าน
<input type=“range” min=“0” max=“100” >
HTML input เพิ่มเติม สาหรับ HTML5
type=“month” สาหรับแสดงค่าเดือนและปี
type=“week” สาหรับแสดงสัปดาห์และปี
type=“time” สาหรับแสดงเวลา
type=“datetime” สาหรับแสดงวันและเวลา
type=“email” สาหรับรับข้อมูลที่เป็น email
33. 29
HTML elements – Table & Form
ตัวอักษรรูปแบบหนา
- กล่องรับข้อมูล (input text) กาหนดให้
รับจานวนตัวอักษรไม่เกิน 20 ตัวอักษร
ปุ่ม submit เมื่อกดแล้วจะวิ่งไปยังไฟล์ first.html โดยส่ง
ค่าของ username และ password ในรูปแบบของ GET
กาหนดตาแหน่งรูปภาพอยู่กึ่งกลางคอลัมภ์
และมีขนาด 100x100 pixel โดยสามารถ link
ไปยัง website : https://www.scg.com/
ลองทากันเถอะ
ลองทากันเถอะ [HTML Element]
62. 29
PHP1 – Condition & Loop
Switch-case ใน PHP ใช้กับข้อความได้
<?php
$favcolor = "red";
switch ($favcolor) {
case "red” : echo "Your favorite color is red!"; break;
case "blue“ : echo "Your favorite color is blue!"; break;
case "green": echo "Your favorite color is green!"; break;
default :
echo "Your favorite color is neither red, blue, nor green!";
}
?>
ผลลัพธ์ของโปรแกรมคือ
Your favorite color is red!
Switch-case ใน PHP ใช้กับข้อความได้
<?php
switch ($choice){
case 1:
print “Your choice is number ONE.<br>”;
case 2:
print “Your choice is number TWO.<br>”;
case 3:
print “Your choice is number THREE.<br>”;
}
?>
ผลลัพธ์ของโปรแกรมคือ
Your choice is number ONE.
Your choice is number TWO.
Your choice is number THREE.
หากใช้ switch โดยไม่ใส่ break จะให้ผลลัพธ์ที่แตกต่างกัน