250 likes | 436 Views
HTML & PHP. Web Technology And Basic Web Development. HTML Forms and Input. คือ Tag ใน HTML ที่สามารถสร้างขึ้นมาเพื่อให้ผู้ใช้สามารถใส่ค่า Input ต่าง ๆ ได้ ซึ่งประกอบไปด้วย input element ต่าง ๆ เช่น text fields, textarea fields, drop-down menus, radio buttons, checkboxes, etc.
E N D
HTML & PHP Web Technology And Basic Web Development
HTML Forms and Input คือ Tag ใน HTML ที่สามารถสร้างขึ้นมาเพื่อให้ผู้ใช้สามารถใส่ค่า Input ต่าง ๆ ได้ ซึ่งประกอบไปด้วย input element ต่าง ๆ เช่น text fields, textarea fields, drop-down menus, radio buttons, checkboxes, etc. รูปแบบของ HTML Form <form> <input> <input> input elements . .</form>
Input : Text Field • <input type="text" name=“………" /> <html><body> <form>First name:<input type="text" name="firstname" /><br />Last name:<input type="text" name="lastname" /></form> </body></html>
Input : Radio Buttons • <input type=“radio” name=“...” value=“…“> <form> <input type="radio" name="sex" value="male"> Male <br> <input type="radio" name="sex" value="female"> Female </form>
Input : CheckBoxes • <input type=“checkbox” name=“...” value=“…”> <form> bike: <input type="checkbox" name="vehicle" value="Bike"> <br> car: <input type="checkbox" name="vehicle" value="Car"> <br> plane: <input type="checkbox" name="vehicle“ value=“Plane"> </form>
การส่งผ่านค่าใน FORM และ Submit Button • <form name=“….” action=“…” method=“…”> • <input type=“submit” value=“…”> <form name=“survey” action=“survey.html” method=“get”> Username : <input type=“text” name=“username”> <br> Password : <input type = “password” name=“passwd”> <br> <input type=“submit” value=“Login”> </form>
การส่งผ่านค่าใน FORM และ Submit Button (2) <html> <body> ………………. ………………. survey.html
PHP • PHP มาจาก PHP : Hypertext Preprocessor • ทำงานที่ฝั่งของ server เช่นเดียวกับ ASP • สามารถทำงานร่วมกับระบบฐานข้อมูลได้หลายชนิด (MySQL, Informix, Oracle, Sybase, ..etc) • PHP เป็น open source • PHP ฟรี • PHP สามารถทำงานได้ในหลาย OS (Windows, Linux, Unix, etc..) • Web server เกือบทุกเจ้ารองรับ PHP (IIS, Apache) • โดยปกติจะเป็นแฟ้มข้อมูลที่อยู่ในรูป .php , .php3 หรือ .phtml
ก่อนจะเริ่มเขียน PHP *** ต้องทำการติดตั้งโปรแกรม PHP ก่อน *** AppServ • ในการเรียนการสอนต่อไป เราจะใช้ AppServซึ่งไปการรวม software หลายอย่างเข้าด้วยกัน เพื่อเป็น package ที่ง่ายในการติดตั้ง และ ใช้งาน • Website: http://www.appservnetwork.com • ในโปรแกรม AppServ (AppServ 2.5.10) จะประกอบไปด้วย • Apache 2.2.8 : เป็นโปรแกรม web server • PHP 5.2.6 : module PHP ที่ทำให้ web server สามารถใช้งานภาษา PHP ได้ • MySQL 5.0.51b : ระบบฐานข้อมูล mySQL • phpMyAdmin-2.10.3 : เป็น web page ที่ช่วยในการติดต่อการระบบฐานข้อมูล mySQLทำให้ทำงานกับระบบฐานข้อมูล mySQLได้ง่ายขึ้น
เริ่มต้นกับ PHP • Syntax ของ PHP จะอยู่ในรูป <?php โปรแกรม PHP ?> หรือ<? โปรแกรม PHP ?> • ทดลองง่ายๆ ก่อนกับฟังค์ชั่น echo • Comment ใน PHP ใช้เหมือนภาษา C , Java คือ // และ /* */ <html> <body> <? echo “Hello World”; ?> </body> </html>
<html> <body> <? echo “Hello World”; ?> </body> </html> PHP HTML <html> <body> Hello World </body> </html>
การประกาศตัวแปรใน PHP • ในภาษา PHP จะใช้สัญลักษณ์ $ นำหน้าชื่อตัวแปร เช่น • $myVariable = 5; • $txt = “Hello World”; • PHP เป็นภาษา script ที่ไม่สนใจประเภทของข้อมูลจึงไม่จำเป็นต้องประกาศประเภทของข้อมูล (int, string,..) ให้กับตัวแปร • ตัวอย่าง : <? $txt = “Hello World”; echo $txt; ?>
PHP Operator • การเชื่อมต่อข้อความ จะเชื่อมต่อด้วยเครื่องหมายจุด “ . “ <? $txt1=“Hello World”; $txt2 =“123”; echo $txt1 . “ “ . $txt2; ?> • การทำ arithmetic operation ก็ใช้เครื่องหมายเหมือนภาษา C, java +, - , * , / , %, ++, --, +=, -= , == , != , <=
PHP Condition : If-else • If-else ลักษณะการทำงานเหมือนกับภาษา C, Java if (เงื่อนไข ) { คำสั่งถ้าเป็นจริงที่ 1; คำสั่งถ้าเป็นจริงที่ 2;… คำสั่งถ้าเป็นจริงที่ N; } else { คำสั่งถ้าเป็นเท็จ ที่1; คำสั่งถ้าเป็นเท็จ ที่2; … คำสั่งถ้าเป็นเท็จ ที่N; }
ตัวอย่าง PHP Condition : If-else <? $score = 75; if($score >= 80) echo “A”; else if($score >= 70) echo “B”; else if($score >= 60) echo “C”; else if($score >= 50) echo “D”; else echo “F”; ?>
PHP Condition : Switch • switch (n){case เงื่อนไขที่1:คำสั่ง ถ้า n = เงื่อนไขที่ 1 break;case เงื่อนไขที่2: คำสั่ง ถ้า n = เงื่อนไขที่ 2 break;default:คำสั่ง ถ้า n ไม่ตรงกับเงื่อนไขที่ 1 และ 2 }
ตัวอย่าง PHP Condition : Switch • <?php $x = 4;switch ($x){case 1: echo "Number 1"; break;case 2: echo "Number 2"; break;case 3: echo "Number 3"; break;default: echo "No number between 1 and 3";}?>
PHP Arrays • การประกาศตัวแปรแบบข้อมูลชุด ซึ่งจะมีหลาย ๆ ค่าในชื่อตัวแปรเดียว • ประกอบไปด้วยarray ทั้งหมด 3 ชนิด • Numeric array – Array ที่ใช้ index เป็นตัวเลข • Associative array - Array ที่ใช้ index เป็นค่าต่าง ๆ • Multidimensional array - Array ที่ประกอบไปด้วย Array ซ้อนกัน
Numeric array • ประกาศได้ 2 แบบ คือ • $cars=array("Saab","Volvo","BMW","Toyota"); • $cars[0]="Saab";$cars[1]="Volvo";$cars[2]="BMW";$cars[3]="Toyota"; ตัวอย่าง <?php$cars[0]="Saab";$cars[1]="Volvo";$cars[2]="BMW";$cars[3]="Toyota"; echo $cars[0] . " and " . $cars[1] . " are Swedish cars.";?>
Associative array • ประกาศได้ 2 แบบ คือ • $ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34); • $ages['Peter'] = "32";$ages['Quagmire'] = "30";$ages['Joe'] = "34"; ตัวอย่าง <?php$ages['Peter'] = "32";$ages['Quagmire'] = "30";$ages['Joe'] = "34";echo "Peter is " . $ages['Peter'] . " years old.";?>
HTML + PHP • PHP จะสามารถรับค่าจาก form ของ HTML เช่น จากตัวอย่างคิดเกรด เราจะทำหน้า web page เพื่อรับค่า score แล้วส่งค่าไปให้ php PHP <html> <form action=“a.php" method="get"> score : <input type="text" name="score"> <input type="submit" value="submit"> </form> </html>
การรับค่าใน PHP • ใน HTML FORM จะมี method อยู่ 2 แบบ คือ get และ post • การดึงค่าจาก method=“get” จะดึงค่าจากตัวแปรที่ชื่อ $_GET • การดึงค่าจาก method=“post” จะดึงค่าจากตัวแปรที่ชื่อ $_POST • ทั้ง $_GET และ $_POST เป็นตัวแปรชนิด array <html> <? $score = $_GET[“score”]; if($score >= 80) echo “A”; else if($score >= 70) echo “B”; else if($score >= 60) echo “C”; else if($score >= 50) echo “D”; else echo “F”; ?> </html> <html> <form action=“a.php" method="get"> score : <input type="text" name="score“> <input type="submit" value="submit"> </form> </html> grade.html
GET และ POST • Method ในระบบ form คือ GET และ POST มีความแตกต่างกันดังนี้ • GET • ค่าที่เราใส่เข้าไปจะถูกแสดงใน URL ของหน้าใน action • ทำให้มีความไม่ปลอดภัยถ้าค่าที่จะส่งอีกหน้าเป็น password เพราะจะถูกแสดงใน URL • แต่จะทำให้สามารถทำ bookmark ได้ • POST • ค่าที่ใส่ใน form จะไม่ถูกแสดงใน URL ของหน้าใน action • ทำให้มีความปลอดภัยในข้อมูลที่ส่งระหว่างหน้าเว็บ • แต่จะไม่สามารถทำ bookmark ได้