php hypertext preprocessor n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
PHP: Hypertext Preprocessor PowerPoint Presentation
Download Presentation
PHP: Hypertext Preprocessor

Loading in 2 Seconds...

play fullscreen
1 / 44

PHP: Hypertext Preprocessor - PowerPoint PPT Presentation


  • 98 Views
  • Uploaded on

เพิ่มเติม เขียน PHP ติดต่อฐานข้อมูล MS-Access. PHP: Hypertext Preprocessor. โหลดไฟล์ที่ http://www.iamsanya.com/docfile/database1.zip. สัญญา เครือหงษ์ ภาควิชาวิทยาการคอมพิวเตอร์และเทคโนโลยีสารสนเทศ คณะวิทยาศาสตร์ มหาวิทยาลัยนเรศวร. วัตถุประสงค์การเรียนรู้ประจำบท.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'PHP: Hypertext Preprocessor' - rene


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
php hypertext preprocessor

เพิ่มเติม

เขียน PHP ติดต่อฐานข้อมูล MS-Access

PHP:Hypertext Preprocessor

โหลดไฟล์ที่ http://www.iamsanya.com/docfile/database1.zip

สัญญา เครือหงษ์

ภาควิชาวิทยาการคอมพิวเตอร์และเทคโนโลยีสารสนเทศ

คณะวิทยาศาสตร์ มหาวิทยาลัยนเรศวร

slide2
วัตถุประสงค์การเรียนรู้ประจำบทวัตถุประสงค์การเรียนรู้ประจำบท
access
เริ่มต้นการติดต่อกับ Access
  • ก่อนที่เราจะติดต่อกับฐานข้อมูลจริง ต้องรู้จักกับฟังก์ชั่นเหล่านี้ก่อน ซึ่งมีความจำเป็นมาก ๆ ในการใช้งาน
slide4

การที่เราจะเขียน php ติดต่อกับฐานข้อมูล Microsoft Access เราจะต้องติดตอผ่าน ODBC ซึ่งเป็น Driver ของการเชื่อมต่อฐานข้อมูล ซึ่งการติดต่อผ่าน ODBC จะต้องมีการ Set ชื่อ DSN เพื่อเป็นชื่ออ้างอิงในการติดต่อกับฐานข้อมูลนั้น ๆ สามารถศึกษาได้ที่หัวข้อถัดจากนี้

set dsn access
การ SET DSN เพื่อติดต่อกับ ACCESS

ก่อนที่เราจะ Set Dsn เราต้องมีฐานข้อมูลก่อน รู้จะ Path และ ที่อยู่ของฐานข้อมูลในที่นี้ ฐานข้อมูลผมอยู่ที่ C:\Appserv\www\web\database.mdb เริ่มกันเลยครับ ผมจะแบ่งเป้น 2 ประเภทครับ คือ - การ Set บน Win95,Win98,WinMeเมนู Start > Sitting > Control Panel เลือก ODBC Datasources (32Bit)

1. ดับเบิ้ลคลิก

slide7

2. เลือก Add จากนั้นเลือก Microsoft Access Driver (*.mdb) -> Finish

slide8

กำหนด ชื่อ DSN เป็น customer และ เลือก Select เพื่อ ทำการอ้างอิงไฟล์ฐานข้อมูล

slide9

- การ Set บน WinXP,NT,2000 เมนู Start > Sitting > Control Panel > Administrative Tool เลือก Data Sources (ODBC)

1. ดับเบิ้ลคลิก เลือก Tab System

DSN และเลือก > Add

จากนั้นเลือก Driver do Microsoft Access Driver (*.mdb) -> Finish

slide10

กำหนด ชื่อ DSN เป็น customer และ เลือก Select เพื่อ ทำการอ้างอิงไฟล์ฐานข้อมูล

  • จะได้ชื่อ DSN เป็น customer ใว้อ้างอิงในการติดต่อกับฐานข้อมูล
slide11
ตอนที่ 1 การแสดงคุณสมบัติต่าง ๆ ของตาราง

ฐานข้อมูล C:\Appserv\www\web\database.mdb ซื่อตาราง Customer

slide12

การแสดงชื่อและจำนวนฟิวส์ของตาราง customer

<?

$dsn_name = "customer";

$username ="";

$password ="";

$connect= odbc_connect($dsn_name, $username, $password) or

die("ติดต่อ DSN ไม่ได้");

$sql = "select * from customer";

$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");

$num_field = odbc_num_fields($execute);

for ($I=1; $I<= $num_field; $I++)

{

echo $I. ". ฟิวส์ <b> ".odbc_field_name($execute, $I)."</b> ชนิดของข้อมูลเป็น <b> odbc_field_type($execute, $I)"."</b><br>";

}

odbc_close($connect);

?>

php4-1.php

Out Put

1. ฟิวส์ id ชนิดของข้อมูลเป็น COUNTER2. ฟิวส์ name ชนิดของข้อมูลเป็น VARCHAR3. ฟิวส์ surname ชนิดของข้อมูลเป็น VARCHAR

slide13
ตอนที่ 2 การนำข้อมูลจากตารางมาแสดง

ฐานข้อมูล C:\Appserv\www\web\database.mdb ชื่อตาราง customer

slide14

การนำข้อมูลจากตารางมาแสดงการนำข้อมูลจากตารางมาแสดง

php4-2.php

<?$dsn_name = "customer";$username =""; $password =""; $connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้"); $sql = "select * from customer";$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");?><table border="1" width="371"><tr> <td width="32"> <div align="center">id</div></td><td width="132"> <div align="center">name</div></td><td width="185"> <div align="center">surname</div></td></tr><? $i=1;while(odbc_fetch_row($execute,$i)){

slide15

<?

if ($i%2==0)

{

echo "<trbgcolor=#FFFF99>";

}else{

echo "<trbgcolor=#FFCCCC>";

}?>

//เพื่อสลับสีแถว ให้เขียนทับ <tr>

$id=odbc_result($execute,"id");$name=odbc_result($execute,"name");$surname=odbc_result($execute,"surname");?><tr><td width="35"> <div align="center"> <? echo "$id"; ?></div></td><td width="129"> <? echo "$name"; ?></td><td width="184"> <? echo "$surname"; ?></td></tr></table><?$i++;}?><?odbc_close($connect);?>

slide17
ตอนที่ 3 การเพิ่มข้อมูลลงในตาราง

ฐานข้อมูล C:\Appserv\www\web\database.mdb

slide18

รูปแบบ

insert ino ชื่อตาราง (ฟิวส์1,ฟิวส์2,ฟิวส์3...) values ('ค่า1','ค่า2','ค่า3',...)

<?$dsn_name = "customer";$username =""; $password =""; $connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้");/* จะเห็นว่า code ข้างล่างไม่ได้มีการเพิ่มฟิวส์ id เพราะ id ชนิดของข้อมูลเป็น Auto number */ $sql = "insert into customer (name,surname) values ('นายวีระชัย ','นุกิจรัมย์')";$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");odbc_free_result($execute);odbc_close($connect);?>

php4-3.php

slide19

Add ผ่าน Form

php4-4.php

<html><body><form name="form1" method="post" action=“php4-4-2.php”>Name <input type="text" name="name">Surname <input type="text" name="surname"><input type="submit" name="Submit" value="Submit"></form></body></html>

slide20

php4-4-2.php

<?$dsn_name= "customer";$username =""; $password =""; $connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้");/* จะเห็นว่า code ข้างล่างไม่ได้มีการเพิ่มฟิวส์ id เพราะ id ชนิดของข้อมูลเป็น Auto number */ $sql= "insert into customer (name,surname)values (‘$name’,’$surname’)";$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");odbc_free_result($execute);odbc_close($connect);echo"ได้ทำการบันทึกข้อมูลเรียบร้อยแล้ว ";?>

slide21
ตอนที่ 4 การค้นหาข้อมูลจากตาราง
  • ฐานข้อมูล C:\Appserv\www\web\database.mdb
slide22

php4-5.php

<html><body><form name="form1" method="post" action="">กรุณากรอกชื่อที่ต้องการค้นหา <input type="text" name="search_name" value="<?=$search_name;?>"><input type="submit" name="Submit" value="Search"></form><?if(empty($search_name)){?><hr>กรุณากรอกข้อมูลด้วยครับ<?}else{$dsn_name = "customer";$username =""; $password =""; $connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้"); $sql = "select * from customer Where name like '%$search_name%'"; $execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");?>

slide23

php4-5.php ต่อ

<table border="1" width="371"><tr> <td width="32"> <div align="center">id</div></td><td width="132"> <div align="center">name</div></td><td width="185"> <div align="center">surname</div></td></tr><? $i=1;while(odbc_fetch_row($execute,$i)){ $id=odbc_result($execute,"id"); $name=odbc_result($execute,"name"); $surname=odbc_result($execute,"surname");?>

slide24

php4-5.php ต่อ

<table border="1" width="370"><tr> <td width="35"> <div align="center"> <? echo "$id"; ?></div></td><td width="129"> <? echo "$name"; ?></td><td width="184"> <? echo "$surname"; ?></td></tr><?$i++;}?>

</table><?odbc_close($connect);}?></body></html>

slide25
** เพิ่มเติมครับหากต้องการค้นหานามสกุลด้วยให้เปลี่ยนเป็น $sql = "select * from customer Where name like '%$search_name%' or surname like '%ค่าหรือตัวแปรที่ต้องการค้นหา%'";

Out Put

slide27
ตอนที่ 5 การแก้ข้อมูลในตาราง

php4-6.php

ฐานข้อมูล C:\Appserv\www\web\database.mdb ชื่อตาราง customer

Form แก้ไข

php4-7.php

xxx

xxx

ดึงข้อมูลที่เลือกมาแก้ไข

xxx

บันทึกลงฐานข้อมูล

php4-8.php

slide28

php4-6.php

<?$dsn_name = "customer";$username =""; $password =""; $connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้"); $sql = "select * from customer";$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");?><table border="1" width="451"><tr> <td width="36"> <div align="center">id</div></td><td width="125"> <div align="center">name</div></td><td width="210"> <div align="center">surname</div></td><td width="52"> <div align="center">แก้ไข</div></td></tr><?

slide29

php4-6.php ต่อ

$i=1;while(odbc_fetch_row($execute,$i)){$id=odbc_result($execute,"id");$name=odbc_result($execute,"name");$surname=odbc_result($execute,"surname");?><table border="1" width="451"><tr> <td width="37"> <div align="center"> <? echo "$id"; ?></div></td><td width="122"> <? echo "$name"; ?></td><td width="212"> <? echo "$surname"; ?></td>

slide30

php4-6.php ต่อ

<td width="52"><div align="center"><a href=“php4-7.php?id=<?=$id;?>">แก้ไข</a></div></td></tr><?$i++;}?>

</table><?odbc_close($connect);?>

Out Put

slide31

php4-7.php

<?$dsn_name = "customer";$username =""; $password =""; $connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้"); $sql="SELECT * FROM customer Where id=$id"; $execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");$id=odbc_result($execute,"id");$name=odbc_result($execute,"name");$surname=odbc_result($execute,"surname");odbc_close($connect);?><html><body>

<form name="form1" method="post" action=“php4-8.php">Name <input type="text" name="name" value="<?=$name;?>">Surname <input type="text" name="surname" value="<?=$surname;?>"><input type="submit" name="Submit" value="Update"><input type="hidden" name="id" value="<?=$id;?>"></form></body></html>

Out put

slide32

php4-8.php

Out Put

ได้ทำการ แก้ไขข้อมูลเรียบร้อยแล้ว

<?$dsn_name = "customer";$username =""; $password =""; $connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้");$sql = "update customer set name='$name',surname='$surname' where id=$id";$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");odbc_close($connect);echo"ได้ทำการ แก้ไขข้อมูลเรียบร้อยแล้ว ";?>

slide33
ตอนที่ 6 การลบข้อมูลในตางราง

ฐานข้อมูล C:\Appserv\www\web\database.mdb ชื่อตาราง customer

slide34

php4-9.php

<?$dsn_name = "customer";$username =""; $password =""; $connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้"); $sql = "select * from customer";$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");?><table border="1" width="451"><tr> <td width="36"> <div align="center">id</div></td><td width="125"> <div align="center">name</div></td><td width="210"> <div align="center">surname</div></td><td width="52"> <div align="center">ลบ</div></td></tr></table><? $i=1;while(odbc_fetch_row($execute,$i)){$id=odbc_result($execute,"id");$name=odbc_result($execute,"name");$surname=odbc_result($execute,"surname");?>

slide35

php4-9.php ต่อ

Out Put

<table border="1" width="451"><tr> <td width="37"> <div align="center"> <? echo "$id"; ?></div></td><td width="122"> <? echo "$name"; ?></td><td width="212"> <? echo "$surname"; ?></td><td width="52"><div align="center"><a href=“php4-10.php?id=<?=$id;?>">ลบ</a></div></td></tr></table><?$i++;}?><?odbc_close($connect);?>

slide36

php4-10.php

Out Put

ได้ทำการ ลบข้อมูลเรียบร้อยแล้ว

<?$dsn_name = "customer";$username =""; $password =""; $connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้");$sql = "delete from customer where id=$id";$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");odbc_close($connect);echo"ได้ทำการ ลบข้อมูลเรียบร้อยแล้ว ";?>

login
ตัวอย่างการสร้างระบบ Login โดยใช้ฐานข้อมูล

php4-11.php

User :

xxxx

Password :

******

Login

Cancel

php4-12.php

ยินดีต้อนรับคุณ..xx.สู่เมนูหลัก

ฐานข้อมูล C:\Appserv\www\web\database.mdb ตารางชื่อ Customer

slide38

php4-11.php

<FORM METHOD=POST ACTION="php4-12.php">

User: <INPUT TYPE="text" NAME=“user"><BR>

Password:<INPUT TYPE="Password" NAME=“pass"><BR>

<INPUT TYPE="submit" value="Login">

<INPUT TYPE="reset" value=“Cancel">

</FORM>

Output

User :

xxxx

Password :

******

Login

Cancel

slide39

<?

$dsn_name = "customer";

$username ="";

$password ="";

$connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้");

$sql="SELECT * FROM customer Where user='$user' and password='$pass'";

$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");

$id=odbc_result($execute,"id");

$name=odbc_result($execute,"name");

$surname=odbc_result($execute,"surname");

odbc_close($connect);

?>

<html> <body>

<?if(empty($id))

{ echo " ไม่พบข้อมูล"; }

else {?>

ยินดีต้อนรับ <B>คุณ<?=$name;?><?=$surname;?></B>.. สู่เมนูหลัก

<?}?></body> </html>

php4-12.php

ยินดีต้อนรับคุณ..xx.สู่เมนูหลัก

Output

login md5
ตัวอย่างการสร้างระบบ Login โดยใช้ฐานข้อมูล และใช้ MD5 ในการเข้ารหัส

ในที่นี้เพื่อเข้ารหัสพาสเวิร์ดเฉยๆ แต่ User ก้ยังจำ Password ของตัวเองปกติ เช่น ถ้ากำหนด “1234” เมื่อเข้ารหัสด้วย MD5 แล้วจะได้ “81dc9bdb52d04dc20036dbd8313ed055” เป็นต้น

<?$dsn_name= "customer";$username =""; $password ="";

$pass1=md5($pass); // pass คือชื่อที่ตั้งจาก textbox ประเภท password$connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้");/* จะเห็นว่า code ข้างล่างไม่ได้มีการเพิ่มฟิวส์ id เพราะ id ชนิดของข้อมูลเป็น Auto number */ $sql= "insert into customer (user,password)values (‘$user’,’$pass1’)";$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");odbc_free_result($execute);odbc_close($connect);echo"ได้ทำการบันทึกข้อมูลเรียบร้อยแล้ว ";?>

login md51
ตัวอย่างการสร้างระบบ Login โดยใช้ฐานข้อมูล และใช้ MD5 ในการเข้ารหัส(ต่อ)

Userform.php

User :

xxxx

Password :

******

Login

Cancel

checkuser.php

ยินดีต้อนรับคุณ..xx.สู่เมนูหลัก

แต่ตอนสั่งเก็บข้อมูลหรือสมัครสมาชิกให้ใช้ฟังก์ชั่น MD5 ตรงฟิลดิ์ Password

ซึ่งรองรับข้อมูล 128bits ดังนั้นตรง password อาจจะต้องกำหนดขนาดให้มากขึ้น

login md52
ตัวอย่างการสร้างระบบ Login โดยใช้ฐานข้อมูล และใช้ MD5 ในการเข้ารหัส(ต่อ)

Userform.php

<FORM METHOD=POST ACTION=“checkuser.php”>

User: <INPUT TYPE="text" NAME=“user"><BR>

Password:<INPUT TYPE="Password" NAME=“pass"><BR>

<INPUT TYPE="submit" value="Login">

<INPUT TYPE="reset" value=“Cancel">

</FORM>

Output

User :

xxxx

Password :

******

Login

Cancel

slide43

<?

$dsn_name = "customer";

$username ="";

$password ="";

$pass1=md5($pass); // ใช้ MD5

$connect= odbc_connect($dsn_name, $username, $password) or die("ติดต่อ DSN ไม่ได้");

$sql="SELECT * FROM customer Where user='$user' and password='$pass1'";

$execute = odbc_exec($connect, $sql) or die ("เอ็กซิคิวส์คำสั่งไม่ได้");

$id=odbc_result($execute,"id");

$name=odbc_result($execute,"name");

$surname=odbc_result($execute,"surname");

odbc_close($connect);

?>

<html> <body>

<?if(empty($id))

{ echo " ไม่พบข้อมูล"; }

else {?>

ยินดีต้อนรับ <B>คุณ<?=$name;?><?=$surname;?></B>.. สู่เมนูหลัก

<?}?></body> </html>

checkuser.php

ยินดีต้อนรับคุณ..xx.สู่เมนูหลัก

Output

slide44
อ้างอิง
  • www.thaicreate.com