![]() | การเขียนเว็บเพจ ด้วยพีเอชพี (PHP) ติดต่อฐานข้อมูลมายเอสคิวแอล (MySQL) เบื้องต้น | ![]() |
บทเรียน 1. ความรู้เบื้องต้น 2. การเลือกตามเงื่อนไข 3. การทำซ้ำ 4. การส่ง และรับค่า 5. ฟังก์ชัน 6. คำสั่งเอสคิวแอล 7. พีเอชพี และมายเอสคิวแอล 8. กรณีศึกษาระบบสมาชิก 9. กรณีศึกษาระบบเว็บบอร์ด 99. ตัวอย่างรหัสต้นฉบับ |
เว็บเซิร์ฟเวอร์ (Web Server)
พีเอชพี (PHP) [wikipedia.org] มายเอสคิวแอล (MySQL) [wikipedia.org] เอสคิวแอล (SQL) แนะนำเว็บ (Web Guides) - http://www.thaiall.com/webserver - http://www.thaiall.com/html/html.htm - http://www.thaiall.com/php - http://www.thaiall.com/mysql - http://www.thaiall.com/source - http://www.thaiall.com/programming - http://www.thaiabc.com |
|
1. ความรู้เบื้องต้น (Introduction)
|
|
ex.101 zz101.php |
คำสั่ง echo และ print แบบธรรมดา <? echo "5"; echo "5" , 5 , 5; print "5"; ?> |
|
ex.102 zz102.php |
คำสั่ง echo และ print แบบคำนวณ <? echo "5 + 5"; echo '5 + 5'; echo 5 + 5; echo "<br>"; print "5 + 5"; print '5 + 5'; print 5 + 5; ?> |
|
ex.103 zz103.php |
คำสั่ง echo และ print แบบใช้ตัวแปร <? $a = 5; echo '$a + $a'; echo "$a + $a"; echo "<br>"; print '$a + $a'; print "$a + $a"; ?> |
|
ex.104 zz104.php |
คำสั่ง echo และ print แบบใช้ตัวแปร และคำนวณ <? $a = 5; echo '$a' + ($a + $a); echo "$a" + ($a + $a); echo "<br>"; print '$a' + ($a + $a); print "$a" + ($a + $a); ?> |
|
ex.105 zz105.php |
แสดงความแตกต่างของ . และ + <? echo "1" + 2 . 4 . "<br>"; echo "1" + 2 . 4 + 8 . 16 . "<br>"; echo "1" . 2 + 4 . 8 + 16 + "<br>"; print "1" + 2 . 4 . "<br>"; print "1" + 2 . 4 + 8 . 16 . "<br>"; print "1" . 2 + 4 . 8 + 16 + "<br>"; ?> |
|
ex.106 zz106.php |
เปรียบเทียบการจับคู่จากข้างหน้าไปข้างหลัง
<?
$a = 5;
echo '$a' . "$a" + 5 . "<br>";
echo ('$a' . "$a") + 5 . "<br>";
echo '$a' . ("$a" + 5) . "<br>";
echo 5 + '$a' . "$a" . "<br>";
echo (5 + '$a') . "$a" . "<br>";
echo 5 + ('$a' . "$a") . "<br>";
?>
|
|
ex.107 zz107.php |
แสดงการใช้คำสั่ง pre ร่วมกับ \n <? $a = 5; echo "<pre>"; echo $a . $a , $a , $a + $a . "\n"; echo '$a' . "$a" + $a . '$a' . "\n"; echo '$a' , $a + "$a"; ?> |
|
ex.108 zz108.php |
การใช้ html ร่วมกับ php แบบธรรมดา <body bgcolor=#ffffdd> abc <? echo "def"; ?> ghi |
|
ex.109 zz109.php |
การใช้ html ร่วมกับ php แบบประกาศ แล้วเรียกใช้ <body bgcolor=#ffffdd> <? $a = "def"; ?> abc <? echo $a; ?> ghi |
|
ex.110 zz110.php |
การใช้ html ร่วมกับ php แบบแทรกค่า <body bgcolor=#ffffdd> <? $a = "jkl" ?> abc <?="def"?> ghi <?=$a?> |
|
ex.111 zz111.php |
เครื่องหมายสำหรับกำหนดหมายเหตุ <? # wow // wow /* wow */ ?> |
|
2. การเลือกตามเงื่อนไข (Decision)
|
|
ex.201 zz201.php |
ทดสอบเงื่อนไข
<?
$a = "pass";
if ($a == "pass") {
echo "ok";
}
?>
|
|
ex.202 zz202.php |
ทดสอบเงื่อนไข 3 แบบ
<?
$b = 10;
if ($b > 2) {
echo "ok 1<br>";
}
if ($b < 100) { echo "ok 2<br>"; }
if ($b <> 5) echo "ok 3<br>";
?>
|
|
ex.203 zz203.php |
ทดสอบเงื่อนไข และใช้ else แบบที่ 1
<?
$a = "neo";
if ($a == "neo") {
echo "pass";
} else {
echo "fail";
}
?>
|
|
ex.204 zz204.php |
ทดสอบเงื่อนไข และใช้ else แบบที่ 2 <? $a = "wow"; if ($a == "neo") echo "pass"; else echo "fail"; ?> |
|
ex.205 zz205.php |
ทดสอบหลายเงื่อนไข แบบไม่ใช้ else <? $a = "th"; if ($a == "us") echo "United State"; if ($a == "th") echo "Thailand"; if ($a == "jp") echo "Japan"; if ($a != "us" && $a != "th" && $a != "jp") echo "Korea"; ?> |
|
ex.206 zz206.php |
ทดสอบหลายเงื่อนไข แบบใช้ if หลัง else
<?
$a = "th";
if($a == "us"){echo "United State";}
else if ($a == "th") echo "Thailand";
else if ($a == "jp") echo "Japan";
else if ($a != "us" && $a != "th"
&& $a != "jp")
echo "Korea";
?>
|
|
ex.207 zz207.php |
ทดสอบหลายเงื่อนไข แบบใช้ elseif
<?
$a = "th";
if ($a == "us") {
echo "United State";
} elseif ($a == "th") {
echo "Thailand";
} elseif ($a == "jp") {
echo "Japan";
} else { echo "Korea"; }
?>
|
|
ex.208 zz208.php |
เลือกเงื่อนไขด้วย switch และ case
<?
$a = "th";
switch($a) {
case "us";
echo "United State : ok";
break;
case "th";
echo "Thailand : ok";
break;
}
?>
|
|
ex.209 zz209.php |
เลือกเงื่อนไขด้วย switch และ default
<?
$a = "cc";
switch($a) {
case "aa";
echo "aa : ok";
break;
case "bb";
echo "bb : ok";
break;
default;
echo "default : ok";
}
?>
|
|
3. การทำซ้ำ (Loop หรือ Repeation)
|
|
ex.301 zz301.php |
ทำซ้ำด้วย for พิมพ์ 1 ถึง 5
<?
for($i=1;$i<=5;$i++){
echo $i;
}
?>
|
|
ex.302 zz302.php |
ทำซ้ำด้วย for พิมพ์ 1 ถึง 5 แบบแทรกใน HTML file
<body bgcolor=yellow>
<? for($i=1;$i<=5;$i++){ ?>
<?=$i?>
<br>
<?}?>
|
|
ex.303 zz303.php |
ทำซ้ำด้วย while พิมพ์ 1 ถึง 5 แบบกำหนดค่าเริ่มที่ 1
<?
$i = 1;
while($i <= 5) {
echo $i;
$i++;
}
?>
|
|
ex.304 zz304.php |
ทำซ้ำด้วย while พิมพ์ 1 ถึง 5 แบบกำหนดค่าเริ่มที่ 0
<?
$i = 0;
while($i < 5) {
$i++;
echo $i;
}
?>
|
|
ex.305 zz305.php |
การอ่าน array ด้วย foreach
<?
$ar = array("200","900");
foreach ($ar as $key => $value) {
echo $key,$value,"<br>";
}
foreach ($ar as $value) {
echo $value,"<br>";
}
?>
|
|
ex.306 zz306.php |
การอ่าน hash array ด้วย foreach
<?
$ar['tom'] = 200;
$ar['boy'] = 900;
foreach ($ar as $key => $value) {
echo $key,$value,"<br>";
}
?>
|
|
ex.307 zz307.php |
พิมพ์ตัวเลขแยกสี แบบใช้ตัวแปร 2 ตัว
<?
echo "<font color=red>";
$c=1;
for($i=1;$i<=5;$i++) {
if ($c == 1) {
$c = 0;
echo "$i<br>";
} else {
$c = 1;
echo "<font color=blue>$i</font><br>";
}
}
?>
|
|
ex.308 zz308.php |
พิมพ์ตัวเลขแยกสี แบบใช้ตัวแปรเดียว
<?
echo "<font color=green>";
for($i=1;$i<=5;$i++) {
if ($i % 2 == 0) {
echo "$i<br>";
} else {
echo "<font color=blue>$i</font><br>";
}
}
?>
|
|
4. การส่ง และรับค่าแบบ Get และ Post
|
|
ex.401 zz401.htm |
ฟอร์มส่งค่าแบบ get <form action=zz402.php method=get> <input name=a value=5><br> <input name=b value=6><br> <input type=submit> </form> |
|
ex.402 zz402.php |
รับค่าจากฟอร์มมาประมวลผล <? echo $_GET["a"]; echo $_GET["b"]; echo $_GET["a"] + $_GET["b"]; ?> |
|
ex.403 zz403.htm |
ฟอร์มส่งค่าแบบ post <form action=zz404.php method=post> <input name=c value=7><br> <input name=d value=8><br> <input type=submit> </form> |
|
ex.404 zz404.php |
รับค่าจากฟอร์มมาประมวลผล <? echo $_POST["c"]; echo $_POST["d"]; echo $_POST["c"] * $_POST["d"]; echo $_REQUEST["c"] , $_REQUEST["d"]; ?> |
|
ex.405 zz405.htm |
ฟอร์มส่งค่าแบบ post <form action=zz405.htm method=post> <input type=text name=a value="boy"><br> <input type=checkbox name=b checked><br> <input type=radio name=c value="A"><br> <input type=radio name=c value="B"><br> <input type=radio name=c value="C" checked><br> <select name=d size=4> <option value=th>Thailand <option value=us selected>United State <option value=jp>Japan </select><br> <textarea name=e rows=4 cols=20> hello </textarea> <input type=submit name=f value=click> </form> |
|
ex.406 zz406.php |
รับค่าจากฟอร์ม ที่ส่งมาในรูปแบบต่าง ๆ <? echo $_POST["a"]."<br>"; echo $_POST["b"]."<br>"; echo $_POST["c"]."<br>"; echo $_POST["d"]."<br>"; echo $_POST["e"]."<br>"; echo $_POST["f"]."<br>"; ?> |
|
ex.407 zz407.php |
รวมฟอร์มส่งค่า และรับมาประมวลผล
<form action=zz407.php>
<input name=n value=3>
<input type=submit>
</form>
<?
if (isset($_GET["n"])) {
for ($i=1;$i<=$_GET["n"];$i++){
echo $i."<br>";
}
}
?>
|
|
ex.408 zz408.php |
ฟอร์มส่ง และรับที่ใช้ while และ request
<form action=zz408.php method=post>
<input name=n1 value=15>
<input name=n2 value=18>
<input type=submit>
</form><pre>
<?
if (isset($_REQUEST["n1"])) {
$n = $_REQUEST["n1"];
while ($n <= $_REQUEST["n2"]) {
echo $n."\n";
$n++;
}
}
?>
|
|
5. ฟังก์ชัน (Functions)
|
|
ex.501 zz501.php |
แสดงค่า Configuration <? phpinfo(); ?> |
|
ex.502 zz502.php |
คำสั่งตัดคำด้วยคำสั่ง substr
<?
$a = "abcde";
echo substr($a,0,2) , "<br>";
echo substr($a,2,2) , "<br>";
echo substr($a,2) , "<br>";
echo substr($a,-2) , "<br>";
echo strlen("abc") , "<br>";
?>
|
|
ex.503 zz503.php |
ฟังก์ชันเกี่ยวกับเวลา และการสุ่ม
<?
srand(microtime()*1000000);
echo rand(1,10)."<br>";
echo microtime()."<br>";
echo microtime() + microtime()."<br>";
echo time()."<br>";
echo date("d/m/Y H:i:s")."<br>";
?>
|
|
ex.504 zz504.php |
ฟังก์ชัน require และ include แบบ html
<body>
<? require("zz502.php"); ?>
<hr>
<? include("zz503.php"); ?>
|
|
ex.505 zz505.php zz505a.php zz505b.php |
ฟังก์ชัน require และ include แบบเต็ม
<?
$a=1;
$b="one";
?>
<?
# zz505a.php
require("zz505.php");
echo $a,$b;
?>
<?
# zz505b.php
include("zz505.php");
echo $a,$b;
?>
|
|
ex.506 zz506.php |
ฟังก์ชันตรวจสอบตัวแปร <form action=zz506.php method=post> <input name=pass> <input type=submit> </form> <? if (!isset($_POST["pass"])) exit; ?> Test Test Test |
|
ex.507 zz507.php |
สร้างฟังก์ชันแบบ internal แบบธรรมดา
<?
a();
echo "b";
a();
?>
bb
<?
function a() {
echo "a";
echo "x";
}
?>
|
|
ex.508 zz508.php |
สร้างฟังก์ชันแบบ internal แบบรับค่า
<?
a(5,6);
function a($b1,$b2) {
echo "$b1 + $b2 = ", $b1 + $b2;
}
?>
|
|
ex.509 zz509.php |
สร้างฟังก์ชันแบบ internal แบบรับ และคืนค่า
<?
echo a(5,6);
echo a(5,6);
function a($b1,$b2) {
$t = $b1 + $b2;
return $t;
}
?>
|
|
ex.510 zz510.php |
สร้างฟังก์ชันแบบ internal แบบคืนค่า
<?
$b1 = 5;
$b2 = 6;
echo a(),b();
function a() {
global $b1,$b2;
$t = $b1 + $b2;
return $t;
}
function b() {
global $b1,$b2;
$t = $b1 + $b2;
return $t;
}
?>
|
|
6. คำสั่งเอสคิวแอล (SQL Command)
|
| ex.601 |
เข้าสู่ MySQL Command Line C:\>cd c:\thaiabc\mysql\bin C:\thaiabc\mysql\bin> mysql -u root -p enter mysql> help; mysql> \s mysql> quit; |
| ex.602 |
สร้าง แสดง และเข้าฐานข้อมูล mysql> create database oho; mysql> show databases; mysql> use oho; |
| ex.603 |
สร้างตารางไว้เก็บข้อมูล
mysql> create table wow1(
->xid int ,
->xname varchar(50),
->xsalary double
->);
mysql> create table w(w1 int, w2 int);
mysql> show tables;
|
| ex.604 |
เพิ่มหลายระเบียน และอ่านมาแสดง mysql> insert into w values(1,10); mysql> insert into w values(1,10); mysql> insert into w values(1,10); mysql> select * from w; |
| ex.605 |
เพิ่มหนึ่งระเบียนหลายเขตข้อมูล
mysql> insert into wow1 values(
->1,
->"boy",
->5000);
mysql> select xid,xname from wow1;
|
| ex.606 |
เลือกข้อมูลได้หลายแบบ mysql> select count(xid) from wow1; mysql> select sum(xsalary) from wow1; mysql> select max(xid) from wow1; mysql> select min(xid) from wow1; mysql> select avg(xid) from wow1; |
| ex.607 |
เลือกแบบมีเงือนไข mysql> select * from wow1 where xid=1; mysql> select * from w order by w2 desc; mysql> show columns from wow1; |
| ex.608 |
การลบระเบียน ลบตาราง หรือลบฐานข้อมูล mysql> delete from wow1 where xid=1; mysql> delete from wow1; mysql> drop table wow1; mysql> drop database oho; |
| ex.609 |
ปรับปรุงข้อมูล
mysql> update wow1 set xname="tom"
->where xid=1;
mysql> update wow1 set
->xname="tom",
->xsalary=3000
->where xid=2;
mysql> update w set w2=5;
|
|
7. พีเอชพี และมายเอสคิวแอล (PHP & MySQL)
|
|
ex.701 s1.php |
เมนูเรียกใช้โปรแกรม
<body><ol>
<li>s1connect.php
<li><a href=s2crtdb.php>s2crtdb.php</a>
<li><a href=s3select.php>s3select.php</a>
<li><a href=s4insert.php>s4insert.php</a>
<li><a href=s5delete.php>s5delete.php</a>
<li><a href=s6update.php>s6update.php</a>
<li><a href=s7drop.php>s7drop.php</a>
</ol><hr color=red>
<? require("s3select.php"); ?>
</body>
|
|
ex.702 s1connect.php |
เชื่อมต่อฐานข้อมูล
<?
$db = "perlphpasp";
$host = "127.0.0.1:3306";
$uname = "root";
$passwd = "";
if (!$connect=mysql_connect($host,$uname,$passwd)){
echo 'Could not connect to mysql';
exit;
}
?>
|
|
ex.703 s2crtdb.php |
สร้างฐานข้อมูล ตาราง และ 3 ระเบียน
<?
require("s1connect.php");
$tb="worker";
$sql = "create database $db";
if (!$result=mysql_query($sql,$connect))
echo "$sql : error<br>";
else echo "$sql : ok<br>";
$sql="create table $tb (eid char(4),ename char(40))";
if (!$result=mysql_db_query($db,$sql))
echo "$sql : error<br>";
else echo "$sql : ok<br>";
$sql="insert into $tb values('1001','Tom')";
if (!$result=mysql_db_query($db,$sql))
echo "$sql : error<br>";
else echo "$sql : ok<br>";
$sql="insert into $tb values('1002','Dang')";
if (!$result=mysql_db_query($db,$sql))
echo "$sql : error<br>";
else echo "$sql : ok<br>";
$sql="insert into $tb values('1003','Pom')";
if (!$result=mysql_db_query($db,$sql))
echo "$sql : error<br>";
else echo "$sql : ok<br>";
mysql_close($connect);
?>
|
|
ex.704 s3select.php |
อ่านข้อมูลมาแสดง
<?
include("s1connect.php");
$tb="worker";
echo "Display records : ";
$query="select * from $tb";
$result = mysql_db_query($db,$query);
if ($result) { echo "OK<br>"; } else { exit; }
while ($object = mysql_fetch_object($result)) {
echo $object->eid . " " . $object->ename . "<br>";
}
echo "Total records : ".mysql_num_rows($result);
mysql_close($connect);
?>
|
|
ex.705 s4insert.php |
เพิ่มข้อมูลใหม่
<body>
<form action=s4insert.php>
<input name=nid value=1004>
<input name=nname value=kmit>
<input type=submit value=s4insert.php>
</form>
<?
require("s1connect.php");
if (!isset($_GET['nid']) || !isset($_GET['nname']))
exit;
$sql="insert into worker values('$nid','$nname')";
if(!$result=mysql_db_query($db,$sql))
echo "$sql : not found";
else echo "$sql : ok";
mysql_close($connect);
?>
</body>
|
|
ex.706 s5delete.php |
ลบข้อมูล
<body>
<form action=s5delete.php>
<input name=delid value=1001>
<input type=submit value=s5delete.php>
</form>
<?
require("s1connect.php");
if (!isset($_GET['delid'])) { exit; }
$sql="delete from worker ";
$sql.="where eid ='".$_GET['delid']."'";
if(!$result=mysql_db_query($db,$sql))
echo "$sql : not found";
else echo "$sql : ok";
mysql_close($connect);
?>
</body>
|
|
ex.707 s6update.php |
ปรับปรุงข้อมูล
<body>
<form action=s6update.php>
<input name=updid value=1003>
<input name=updename value=chula>
<input type=submit value=s6update.php>
</form>
<?
require("s1connect.php");
if (!isset($_GET['updid'])) { exit; }
$sql="update worker set ";
$sql.="eid='". $_GET['updid'] ."', ";
$sql.="ename='". $_GET['updename'] ."' ";
$sql.="where eid='". $_GET['updid'] ."'";
if(!$result=mysql_db_query($db,$sql))
echo "$sql : not found";
else echo "$sql : ok";
mysql_close($connect);
?>
</body>
|
|
ex.708 s7drop.php |
ลบฐานข้อมูล
<?
require("s1connect.php");
$sql="drop database $db";
if (!$result=mysql_db_query($db,$sql))
echo "Database : not found";
else
echo "Database : droped";
mysql_close($connect);
?>
|
|
8. กรณีศึกษาระบบสมาชิก (Member System)
|
|
ex.801 apply.htm |
ฟอร์มสมัครของผู้ใช้ และเข้าระบบ Administrator <body> <form action=apply.php method=post> Name : <input name=mname><br> Surname : <input name=msurn><br> Address : <input name=maddr><br> <input type=submit> </form> <form action=session.php method=post> Admin Password : <input name=admin type=password><br> <input type=submit value='Log in'> </form> <form action=session.php method=post> <input type=submit value='Log Out'> </form> |
|
ex.802 session.php |
ตรวจรหัส Admin และเก็บสถานะ Admin
<?
session_start();
$_SESSION['admin'] = "";
if (isset($_POST['admin'])) {
if ($_POST['admin'] == "p")
$_SESSION['admin'] = "ok";
}
echo $_SESSION['admin']."<br>";
echo date("d/m/Y H:i:s")."<br>";
?>
<a href=crtdbm.php>crtdbm.php</a>
<a href=display.php>display.php</a>
<a href=apply.php>apply.php</a>
|
|
ex.803 crtdbm.php |
สร้างฐานข้อมูล ถ้าเป็น Admin
<?
session_start();
if ($_SESSION['admin'] != "ok") exit;
$db = "mem";
$tb = "member";
$host = "127.0.0.1:3306";
$uname = "admin"; // root
$passwd = "p";
if (!$connect=mysql_connect($host,$uname,$passwd)){
echo 'Could not connect to mysql';
exit;
}
$s = "create database $db";
if (!$result=mysql_query($s,$connect))
echo "$s : error<br>";
else {
echo "$s : ok<br>";
$s="create table $tb (";
$s.="mid int primary key not null auto_increment,";
$s.="mname char(40),msurn char(40),maddr char(40))";
if (!$result=mysql_db_query($db,$s))
echo "$s : error<br>";
else
echo "$s : ok<br>";
}
mysql_close($connect);
?>
|
|
ex.804 apply.php |
ผู้ใช้สมัครสมาชิก
<?
$db = "mem";
$tb = "member";
$host = "127.0.0.1:3306";
$uname = "admin"; // root
$passwd = "p";
if (!$connect=mysql_connect($host,$uname,$passwd)){
echo 'Could not connect to mysql';
exit;
}
if (isset($_POST["mname"]) && isset($_POST["mname"])){
$sql="insert into $tb values('',";
$sql.="'".$_POST["mname"]."',";
$sql.="'".$_POST["msurn"]."',";
$sql.="'".$_POST["maddr"]."')";
if (!$result=mysql_db_query($db,$sql))
echo "$sql : error<br>";
else {
echo "$sql : ok<br>";
}
}
mysql_close($connect);
?>
<br><a href=apply.htm>apply.htm</a>
|
|
ex.805 display.php |
แสดงข้อมูล ถ้าเป็น Admin
<?
session_start();
if ($_SESSION['admin'] != "ok") exit;
$db = "mem";
$tb = "member";
$host = "127.0.0.1:3306";
$uname = "admin"; // root
$passwd = "p";
if (!$connect=mysql_connect($host,$uname,$passwd)){
echo 'Could not connect to mysql';
exit;
}
echo "Display Members : <ol>";
$query="select * from $tb order by mid";
if($result = mysql_db_query($db,$query)) {
while ($object = mysql_fetch_object($result)) {
echo "<li>" . $object->mid . "<br>";
echo $object->mname . "<br>";
echo $object->msurn . "<br>";
echo $object->maddr . "<br>";
echo"<a href=del.php?mid=".$object->mid.">x</a>";
}
echo "</ol>Total records:".mysql_num_rows($result);
}
mysql_close($connect);
?>
<br><a href=apply.htm>apply.htm</a>
|
|
ex.806 del.php |
ลบข้อมูลตาม mid ถ้าเป็น Admin
<?
session_start();
if ($_SESSION['admin'] != "ok") exit;
$db = "mem";
$tb = "member";
$host = "127.0.0.1:3306";
$uname = "admin"; // root
$passwd = "p";
if (!$connect=mysql_connect($host,$uname,$passwd)){
echo 'Could not connect to mysql';
exit;
}
if (isset($_GET["mid"])) {
$sql="delete from $tb where mid =".$_GET["mid"];
if (!$result=mysql_db_query($db,$sql))
echo "$sql : error<br>";
else {
echo "$sql : ok<br>";
}
}
mysql_close($connect);
?>
<br><a href=apply.htm>apply.htm</a>
|
|
9. กรณีศึกษาระบบเว็บบอร์ด (WebBoard System)
|
|
ex.901 boardf.htm |
ฟอร์มรับความคิดเห็น <body> <form action=boardi.php method=post> Subject : <input name=subj><br> Writer : <input name=writer><br> Message : <textarea cols=20 rows=5 name=msg> </textarea><br> <input type=submit> </form> <br><a href=boards.php>boards.php</a> |
|
ex.902 connect.php |
ส่วนเชื่อมต่อฐานข้อมูล
<?
$db = "wboard";
$tb = "webboard";
$host = "127.0.0.1:3306";
$uname = "admin"; // root
$passwd = "p";
if (!$connect=mysql_connect($host,$uname,$passwd)){
echo 'Could not connect to mysql';
exit;
}
?>
|
|
ex.903 crtdb.php |
สร้างฐานข้อมูล
<?
require("connect.php");
$s = "create database $db";
if (!$result=mysql_query($s,$connect))
echo "$s : error<br>";
else {
echo "$s : ok<br>";
$s="create table $tb (";
$s.="wid int primary key not null auto_increment,";
$s.="subj char(40),writer char(40),";
$s.="msg char(100))";
if (!$result=mysql_db_query($db,$s))
echo "$s : error<br>";
else
echo "$s : ok<br>";
}
mysql_close($connect);
?>
|
|
ex.904 boardi.php |
เพิ่มความคิดเห็นใหม่
<?
require("connect.php");
if (isset($_POST["subj"]) && isset($_POST["writer"])){
$sql="insert into $tb values('',";
$sql.="'".$_POST["subj"]."',";
$sql.="'".$_POST["writer"]."',";
$sql.="'".$_POST["msg"]."')";
if (!$result=mysql_db_query($db,$sql))
echo "$sql : error<br>";
else {
echo "$sql : ok<br>";
}
}
mysql_close($connect);
?>
<br><a href=boardf.htm>boardf.htm </a>
<br><a href=boards.php>boards.php</a>
|
|
ex.905 boards.php |
แสดงข้อมูล
<?
require("connect.php");
echo "<ul>Webboard : <ol>";
$query="select * from $tb order by wid desc";
if($result = mysql_db_query($db,$query)) {
while ($object = mysql_fetch_object($result)) {
echo "<li>" . $object->wid . " : ";
echo $object->subj . " : " . $object->writer;
echo "<pre>" . $object->msg . "</pre>";
}
echo "</ol>Total records:".mysql_num_rows($result);
echo "</ul>";
}
mysql_close($connect);
?>
<br><a href=boardf.htm>boardf.htm </a>
|
99. ตัวอย่างรหัสต้นฉบับ (Source Code Sample)
|
webboard.php | - ไม่ใช้ MySQL - แยกฟังก์ชันภายใน
|
filemanager.php | - ไม่ใช้ MySQL - แยกฟังก์ชันภายใน
|
memmysql.php | - ต้องใช้ MySQL - ไม่สร้างฟังก์ชัน
|
| |