วธการตดตง AppServ (PHP แอพพลเคชนเซรฟเวอร)
AppServ คอ ชดโปรแกรมในลกษณะของ WAMP ในการสรางเวบ
เซรฟเวอรสำาเรจรปบนระบบปฏบตการไมโครซอฟท วนโดวส สรางโดย
ชาวไทย จดทำาขนโดย ภาณพงศ ปญญาด เปนการรวมโปรแกรม
จำานวน 4 ตวในการสรางเวบเซรฟเวอร ไดแก Apache HTTP
Server, PHP,MySQL, และ phpMyAdmin เวอรชนปจจบนไดแก
2.4.9 (สำาหรบ PHP 4) และ 2.5.10 (สำาหรบ PHP 5) เนองจากภาณ
พงศ ปญญาด ตองตอบคำาถามวธการตดตง Apache, PHP, และ
MySQL ใหใชงานดวยกนไดบอยครง จงรเรมพฒนาชดตดตง
AppServ ทตดตงและใชงานไดทนทในประมาณป พ.ศ. 2543 (ค.ศ.
2000) และพฒนาตอเนองเรอยมา (th.wikipedia.org)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
AppServ คอ ชดตดตงโปรแกรม PHP แอพพลเคชนเซรฟเวอรสำาหรบตดตงบนระบบปฏบตการ Windows ในชดตดตง AppServ น ประกอบดวยโปรแกรมตางๆ ดงตอไปน
Apache สำาหรบทำาหนาทเปนเวบเซรฟเวอร
PHP สำาหรบทำาหนาทเปนตวแปรภาษา PHP
MySQL สำาหรบทำาหนาทเปนดาตาเบสเซรฟเวอร
phpMyAdmin สำาหรบทำาหนาทเปนโปรแกรมบรหารจดการฐานขอมลของ MySQL
ขนตอนการตดตง AppServ 2.5.10
1. ไปท http://www.appservnetwork.com/ แลวดาวนโหลด AppServ 2.5.10
2. เปดไฟล appserv-win32.2.5.10.exe ขนมา คลกปม Next ตอไปเลยคะ
3. หนาน AppServ 2.5.10 - License Agreement เปนขอความแสดงลขสทธ GNU LESSER เมอคณอานและเขาใจลขสทธนแลว กคลกปม I Agree ไดเลย
4. เลอกโฟลเดอรทใชในการตดตง Appserv เมอเลอกแลวกกด Next ไดเลย
5. เลอกสวนประกอบของ Appserv ซงมดงน
Apache สำาหรบทำาหนาทเปนเวบเซรฟเวอร
PHP สำาหรบทำาหนาทเปนตวแปรภาษา PHP
MySQL สำาหรบทำาหนาทเปนดาตาเบสเซรฟเวอร
phpMyAdmin สำาหรบทำาหนาทเปนโปรแกรมบรหารจดการฐานขอมลของ MySQL
6. ระบรายละเอยดของโปรแกรมเวบเซรฟเวอร Apache ซงจะตองระบบคาดงน
Server Name - ชอของเซรฟเวอร หรอชอโฮสต ใหระบเปน localhost
Administrator's Email Address - อเมลของผดแลระบบ หรออเมลของคณ
Apache HTTP Port - ชอพอรต เปนทางออกของขอมล โดย Apache จะมพอรตดฟอลตคอ 80
7. ระบรายละเอยดของโปรแกรมฐานขอมล MySQL ซงมรายละเอยดดงน
Enter root password - ระบรหสผานของผดแลระบบ (แนะนำาใหใชรหสผานทจำาไดงายๆ นะคะ เพราะเราจะตองใชรหสผานนบอยคะ)
Re-enter root password - กรอกรหสผานอกครง
Character Sets and Collations - เลอกการเขารหสภาษา ในทนคอ UTF-8 Unicode ซงเปนรหสภาษาสากล
Old Password Support - เพอรองรบกบการเขารหสผานแบบเกา
Enable InnoDB - เพอใหรองรบฐานขอมลแบบ InnoDB
8. โปรแกรมจะตดตง Appserv รอจนกวาจะตดตงเสรจ กกด Finish ไดเลยคะ
9. ทดสอบวาคณลง Appserv สำาเรจหรอไม สามารถตรวจสอบไดดวยการเปดเวบบราวเซอรขนมา แลวเรยกไปท http://localhost หรอ http:// 127.0.0.1 ถาขนตามรปกแสดงวา
ลงสำาเรจคะ
ตอไปกมาเรยนร php เบองตนกนตอเลยคะ
http://www.phpparty.com/index.php/ พนฐานการเขยนโปรแกรม - php/84--appserv-php
ภาษาพเอชพ ( PHP )
ประวตของภาษาพเอชพ (PHP)
พเอชพ (PHP) คอ ภาษาคอมพวเตอรในลกษณะเซรฟเวอร-ไซด สครปต โดยลขสทธอยในลกษณะโอเพนซอรส ภาษาพเอชพใชสำาหรบจดทำาเวบไซต และแสดงผลออกมาในรปแบบ HTML โดยม
รากฐานโครงสรางคำาสงมาจากภาษา ภาษาซ ภาษาจาวา และ ภาษาเพรล ซง ภาษาพเอชพ นนงายตอการเรยนร ซงเปาหมายหลกของภาษาน คอใหนกพฒนาเวบไซตสามารถเขยน เวบเพจ ทมความตอบโตได
อยางรวดเรว ( http://th.wikipedia.org )
ในชวงแรกภาษาทนยมใชในการทำางานบนระบบ Network คอ HTML (Hypertext Markup Lanuage) แตภาษา HTML เปน Static Language กคอ ภาษาทใชสรางขอมลประเภทตวอกษร ภาพ หรอ
Object อนๆ ทไมสามารถเปลยนแปลงได ดวยตวของมนเอง หรอเรยกงายๆ วาขอมลทคงทนนเอง กทำาใหไมยดหยน ตอมาความตองการของมนษย ไมมวนเพยงพอ จงไดมการพฒนา ภาษาทเปน
Dynamic Lanuage ขนมา กคอ ภาษาทมขอมลถกเปลยนแปลง Auto ตามเงอนไขตางๆ ทผเขยนกำาหนดไว มการ ประกาศตวแปรได ขอมลทเปลยนแปลงกเปลยนแปลงตามตวแปร น เปนทมาของ ภาษา
PHP CGI ASP เปนตน โดยเฉพาะ ภาษาประเภท Scripts ทสามารถตดตอกบผใชได และ หนงในภาษาเหลานนกคอ PHP ซงเปนภาษาทไดรบความนยมอยางมากในปจจบน ถกสรางขน เมอ ป 1994 กอน
Windows 95 ปเดยวเอง โดยนาย Rasmus Lerdorf
PHP เปนภาษาจำาพวก scripting language คำาสงตางๆจะเกบอยในไฟลทเรยกวาสครปต (script) และเวลาใชงานตองอาศยตวแปลชดคำาสง ตวอยางของภาษาสครปกเชน JavaScript, Perl เปนตน
ลกษณะของ PHP ทแตกตางจากภาษาสครปตแบบอนๆ คอ PHP ไดรบการพฒนาและออกแบบมา เพอใชงานในการสรางเอกสารแบบ HTML โดยสามารถ สอดแทรกหรอแกไขเนอหาไดโดยอตโนมต ดงนน
จงกลาววา PHP เปนภาษาทเรยกวา server-side หรอ HTML-embedded scripting language เปนเครองมอทสำาคญชนดหนง ทชวยใหเราสามารถสรางเอกสารแบบ Dynamic HTML ไดอยางม
ประสทธภาพและมลกเลนมากขน
ถาใครรจก Server Side Include (SSI) กจะสามารถเขาใจการทำางานของ PHP ไดไมยาก สมมตวา เราตองการจะแสดงวนเวลาปจจบนทผเขามาเยยมชมเวบไซดในขณะนน ในตำาแหนง ใดตำาแหนงหนง
ภายในเอกสาร HTML ทเราตองการ อาจจะใชคำาสงในรปแบบน เชน <!--#exec cgi="date.pl"--> ไวในเอกสาร HTML เมอ SSI ของ web server มาพบคำาสงน กจะกระทำาคำาสง date.pl ซงในกรณน เปน
สครปตทเขยนดวยภาษา perl สำาหรบอานเวลาจากเครองคอมพวเตอร แลวใสคาเวลาเปนเอาพท (output) และแทนทคำาสงดงกลาว ลงในเอกสาร HTML โดยอตโนมต กอนทจะสงไปยงผอานอกทหนง
อาจจะกลาวไดวา PHP ไดรบการพฒนาขนมา เพอแทนท SSI รปแบบเดมๆ โดยใหมความสามารถ และมสวนเชอมตอกบเครองมอชนดอนมากขน เชน ตดตอกบคลงขอมลหรอ database เปนตน
PHP ไดรบการเผยแพรเปนครงแรกในปค.ศ.1994 จากนนกมการพฒนาตอมาตามลำาดบ เปนเวอรชน 1 ในป 1995 เวอรชน 2 (ตอนนนใชชอวา PHP/FI) ในชวงระหวาง 1995-1997 และเวอรชน 3 ชวง
1997 ถง 1999 จนถงเวอรชน 4 ในปจจบน
PHP เปนผลงานทเตบโตมาจากกลมของนกพฒนาในเชงเปดเผยรหสตนฉบบ หรอ OpenSource ดงนน PHP จงมการพฒนาไปอยางรวดเรว และแพรหลายโดยเฉพาะอยางยงเมอใชรวมกบ Apache
Webserver ระบบปฏบตอยางเชน Linux หรอ FreeBSD เปนตน ในปจจบน PHP สามารถใชรวมกบ Web Server หลายๆตวบนระบบปฏบตการอยางเชน Windows 95/98/NT เปนตน
รายชอของนกพฒนาภาษา PHP ทเปนแกนหลกสำาคญในปจจบนมดงตอไปน
Zeev Suraski, Israel Andi Gutmans, Israel Shane Caraveo, Florida USA Stig Bakken, Norway Andrey Zmievski, Nebraska USA Sascha Schumann, Dortmund, Germany Thies
C. Arntzen, Hamburg, Germany Jim Winstead, Los Angeles, USA Rasmus Lerdorf, North Carolina, USA
เนองจากวา PHP ไมไดเปนสวนหนงของตว Web Server ดงนนถาจะใช PHP กจะตองดกอนวา Web server นนสามารถใชสครปต PHP ไดหรอไม ยกตวอยางเชน PHP สามารถใชไดกบ Apache
WebServer และ Personal Web Server (PWP) สำาหรบระบบปฏบตการ Windows 95/98/NT ในกรณของ Apache เราสามารถใช PHP ไดสองรปแบบคอ ในลกษณะของ CGI และ Apache Module
ความแตกตางอยตรงทวา ถาใช PHP เปนแบบโมดล PHP จะเปนสวนหนงของ Apache หรอเปนสวนขยายในการทำางานนนเอง ซงจะทำางานไดเรวกวาแบบทเปน CGI เพราะวา ถาเปน CGI แลว ตวแปลชด
คำาสงของ PHP ถอวาเปนแคโปรแกรมภายนอก ซง Apache จะตองเรยกขนมาทำางานทกครง ทตองการใช PHP ดงนน ถามองในเรองของประสทธ ภาพในการทำางาน การใช PHP แบบทเปนโมดลหนงของ
Apache จะทำางานไดมประสทธภาพมากกวา ตอไปนเราจะมาทำาความรจกกบภาษา PHP และทำาความเขาใจการทำางาน รวมถงคำาสงพนฐานตางๆ ทใชในการเขยนสครปตในภาษา PHP
รปแบบภาษาของ php
รปแบบของภาษาพเอชพ (PHP)
PHP เปนภาษาสครปตภาษาหนงททำางานฝงเซรฟเวอร (Server-side) หมายถงเมอโคดถกเรยกใชโดยบราวเซอร สวนโปแกรม PHP ทอยในเครองทเปนเซรฟเวอรจะทำาการประมวลผลแลวสรางผลลพธให
อยในรปแบบของภาษา HTML แลวจงสงมาใหกบเครอง Client เพอใหบราวเซอรแสดงผลอกท
การสอดแทรกคำาสงภาษา PHP ในเอกสาร HTML
เพอเปนการบงบอกใหรวา สวนใดเปนคำาสง PHP ทอยภายในเอกสาร HTML จงไดมการกำาหนดสญลกษณไวดงน ซงสามารถทำาไดหลายรปแบบ เชน<?php....?> หรอ<script
language="php"....</script> หรอ<?...?> มาลองทำาตามตวอยางดคะ
<html>
<head>
<title>My First PHP </title>
</head>
<body>
<?php echo "<p>Hello World</p>"; ?>
</body>
</html>
ผลลพธของโปรแกรมคอ Hello World
*ใครลงโปรแกรม Adobe Dreamwaver แลวกพมพไดเลยคะสำาหรบใครทยงไมไดลงหรอไมมโปรแกรมคลกทน และสำาหรบใครทไมสะดวกจะใชโปรแกรมน กใช Nodpad หรอ EditPlus กไดคะ *-*
วธตรวจสอบโปรแกรมทเขยน
1. เปดโปรแกรม Adobe Dreamvaver ขนมา เลอก Page Type : php
2. เมอเราพมพโคดใน Adeobe Dreamwaver แลว กจะตอง Save File ไวทไดรทเราตดตง Appserv ไว (ดวธการตดตง AppServ ) ดงตวอยาง( ในทนไดลง appserv ไวในไดร C เขาไปตามน :C:\
AppServ\www )
ตวแปรในภาษาพเอชพ (PHP)
สำาหรบการเขยนโปรแกรมสำาหรบภาษาคอมพวเตอรระดบสง สงทจะขาดเสยมไดคอ การกำาหนดและใชตวแปร (variable) ตวแปรในภาษา PHP จะเรมตนดวยเครองหมาย dollar ($) โดยเรา
ไมจำาเปนตองกำาหนดแบบของขอมล (data type) อยางเจาะจงเหมอนในภาษาซ เพราะวา ตวแปลภาษาจะจำาแนกเองโดยอตโนมตวา ตวแปรดงกลาว ใชขอมลแบบใด ในชวงเวลานนๆ เชน ขอความ จำานวนเตม
จำานวนทมเลขจดทศนยมตรรก เปนตน
ชนดของขอมลและตวแปรในภาษา PHP
Integer - จำานวนเตมบวก และจำานวนเตมลบ เลขฐานสบ ฐานแปด และฐานสบหก
Float - เกบจำานวนจรงทงบวกและลบ ทงมทศนยม และไมมทศนยม
String - เกบจำานวนตวเลข และ ขอความ
Array - เกบขอมลทเปนชด หรอ อารเรย
Object - เกบขอมลในลกษณะออปเจกตเพอการเรยกใชเปน Class Object หรอ Function
Type juggling - เกบขอมลในลกษณะเฉพราะหรอผทใชเพมเขามา
ขอบเขตของการตงชอตวแปร
ตวแปรจะตองขนตนดวย $แลวตามดวยตวอกษร A-Z , a-z
ตวอกษรเลกใหญมความหมายตางกน (case-sensitive)
ควรตงชอตวแปรใหมความหมายใกลเคยงกบคาทเกบ
จะตองไมตรงกบคำาสงในภาษา PHP
หามมชองวางระหวาง $ กบชอตวแปร
ตวอยางการกำาหนดชนดใหกบตวแปร
<? echo "Test variable string <br>";
$a=5;
$text = "value \ $a=$a";
$text2 = 'value \ $a=$a';
echo $text."<br>".$text2;
?>
<?
echo gettype(0)," <BR>\n";
echo gettype(1.1)," <BR>\n";
echo gettype(""),"<BR>\n";
echo gettype((1==1))," <BR>\n";
$var = "abc";
if ( gettype($var)=="string" ) {
echo "this is a string<BR>\n";
}
?>
* อยากใหลองพมพกนดนะคะ ~~~ไมอยากให copy-paste เพราะวาถาพมพเองจะรวามนแตกตางกนอยางไรมากกวาการ copy คะ
3. เมอเรา Save File ไวท C:\AppServ\www แลว เราสามารถทดสอบไดดวยการเปดวบบราวเซอรขนมาแลวพมพ http://localhost/ แลวตามดวยชอไฟลทตงไว
เชน http://localhost/MyFirstPHP.php
แกไขลาสด ใน วนเสารท 20 พฤศจกายน 2010 เวลา 14:33 น.