380 likes | 556 Views
PHP+MySQL. Wensir Room6307. 一、 何謂 PHP?. PHP 的全名為 Hypertext Preprocessor ,它是個被廣泛運用在網頁程式撰寫的語言,尤其是它能適用於網頁程式的開發及能夠嵌入 HTML 文件之中,它的語法和 C 、 Java 及 Perl 等語法相似。 PHP 的目的是為了能使網站開發者可以快速地撰寫 [ 動態 ] 網頁。 [ 動態 ] == 動態的「內容」。. 「靜態」網頁的運作方式:. PHP : 「動態」的網頁. Ex: 點我. 歸納:.
E N D
PHP+MySQL Wensir Room6307
一、何謂PHP? • PHP的全名為Hypertext Preprocessor,它是個被廣泛運用在網頁程式撰寫的語言,尤其是它能適用於網頁程式的開發及能夠嵌入HTML文件之中,它的語法和C、Java及Perl等語法相似。PHP的目的是為了能使網站開發者可以快速地撰寫[動態]網頁。 • [動態] == 動態的「內容」。
PHP : 「動態」的網頁 Ex: 點我
歸納: • 副檔名為 html 的網頁會被 Web Server 直接送出,副檔名為 php 的網頁會先經 PHP Engine 處理再送出。 • 含 PHP 碼的網頁,具有迴圈處理的功能,純 HTML 碼的網頁則無。 • 即使網頁內容含有 PHP 碼,在經處理之後,輸出到使用者面前的只剩下 HTML 碼,原始內容不但可以受到保護(不被竊取),使用者使用何種瀏覽器也不會受到侷限。 • Ex1:Ex2:Source • PHP 是一種內嵌式的語言,它被嵌入 HTML 碼之中,彌補純 HTML 碼無法進行運算處理的缺憾。
Example:如何將PHP嵌入HTML文件之中 • <html> <head> <title>Example</title> </head> <body> <?php echo "Hi, I'm a PHP script!"; ?> </body></html> • 這個例子,執行之後它能輸出一些文字。
二、PHP能夠做些什麼? • PHP是在伺服器端執行的程式語言,所以任何其它的CGI程式所能做得到的,它都能做到。像是從表單中收集資料,或是產生動態的網頁內容,PHP都能做得到!
PHP主要運用於: • 伺服器端的程式語言 • Command line scripting • 撰寫用戶端GUI應用程式
1.建立你的第一個PHP網頁 • 首先你必需確定你的伺服器支援PHP,且PHP的副檔名為.php,如果你的伺服器己經支援PHP的功能,你就不需再做任何修改,只要將副檔名存成.php並且放在網站的目錄之中就行了。 • Example: • <html> <head> <title>PHP Test</title> </head> <body> <?php echo "Hello World<p>"; ?> </body></html> 輸出的結果 : <html> <head> <title>PHP Test</title> </head> <body> Hello World<p> </body></html>
2.利用可用的資源 • 利用PHP一些有用的東西,像是如果我們要去檢查用戶端所使用的瀏灠器的種類,我們就可以使用$_SERVER[“HTTP_USER_AGENT”]這個變數,在PHP的語法中,所有的變數都是以錢($)的符號作為開頭。 • Example: <?php echo $_SERVER["HTTP_USER_AGENT"]; ?> • 輸出結果: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0) • 在PHP的語法中,變數的種類相當多。
3.處理表單資料 • PHP其中一個強大的功能就是處理HTML表單的資料,表單內所有的資料都能在你的PHP程式中加以運用 . action.php的內容 : Hi <?php echo $_POST["name"]; ?>.You are <?php echo $_POST["age"]; ?> years old. Example: <form action="action.php" method="POST"> Your name: <input type="text" name="name" /> Your age: <input type="text" name="age" /> <input type="submit"></form> 輸出結果。 Hi Banic.You are 23 years old.
mySQL • MySQL 是一個快速、多執行緒(multithread)、多使用者且功能強大的關聯式資料庫管理系統(relational database management system, RDBMS) • MySQL 並不是一個 Open Source 的計劃,因為其版權在某些情況下是需要付費的,例如將它與其他產品包裝販售。不過,大體上來說,個人及非營利單位使用它是免費的,
使用phpMyAdmin • http://140.116.82.21/phpMyAdmin • Mysql 支援透過這個php網頁,可以動態的更改資料庫的內容. • 新增,修改,刪除 等動作,也都可以用這個網頁來達成.
建立新資料庫 (1) 新建立一個叫 test 的資料庫
建立新資料庫 (2) 表格的內容數
建立新資料庫 (3) Step1:設定欄位的名稱 Step2: 設定此欄位所能存放最大長度 Step3: 按 !
建立新資料庫 (4) 成功 ! 用來新增資料到資料庫裡
建立新資料庫 (5) 我們所輸入欄位的名稱 輸入資料內容 再按 !
建立新資料庫 (6) 成功寫入 按瀏覽檢視資料庫狀態
建立新資料庫 (7) 剛才新增的內容
使用者權限 任何位址的意思
php 與 mysqal的操作原理及函式使用 (1) • 一、連結資料庫 • 建立連線:$link = mysql_connect(“Mysql主機名稱”, “帳號”, “密碼”)or die(“無法連接資料庫: ” . mysql_error()); 6307 MySQL root帳號 密碼wensir1234 • 選擇資料庫:mysql_select_db("資料庫名稱") or die("無法選擇資料庫");
php 與 mysqal的操作原理及函式使用 (2) • 二、執行SQL語法 • 建立SQL語法(查詢) $query = "SELECT * FROM my_table"; (新增) $query = "INSERT INTO my_table (c1,c2,...) VALUES ( value1,value2,...)";(修改) $query = "UPDATE my_table SET c1='abc' WHERE id='100' ";(刪除) $query = "DELETE FROM my_table WHERE id='100' "; • 送出SQL語法到資料庫系統$result = mysql_query($query) or die("無法送出" . mysql_error( )); • (如果查詢成功,零。如果出現一個錯誤,非零。)
php 與 mysqal的操作原理及函式使用 (3) • 三、取得執行SQL語法後的結果 (指查詢部份) while ( $row = mysql_fetch_array($result) ) {echo $row[0]."<BR>";} • 四、釋放與Mysql的連線 mysql_free_result($result);
不小心設了ROOT的密碼? • 進入MS-DOS • C:\AppServ\mysql\bin> • shell> mysql -u root mysql mysql> UPDATE user SET Password=PASSWORD('new_password') WHERE user='root'; mysql> FLUSH PRIVILEGES; //告訴服務器再次讀入授權表 (把密碼設成空白即可)
Reference: • http://chensh.loxa.edu.tw/php/ php+mySQL教學網 • MySQL 中文參考手冊 • PHP & MySQL 教學網站:南台科技大學 • 資料庫系統設計-系統設計 • PHP程式設計講義區
C:\AppServ\www\ Open IE or Firefox or google chrom http://localhost phpMyAdmin <title>這是我的第一個PHP程式</title>
<body> 這是body裡的文字,still use html!<br /> 程式05-02 <br /> <?php //第一個PHP程式 echo "這是PHP輸出的文字,use PHP!<br>";//use PHP engine輸出的文字 echo "PHP環境訊息函數!<br>";//use phpinfo()函數輸出環境訊息 phpinfo(); ?> </body> </html>
程式05-03 <br /> echo and print 指令<br /> <?php //echo and print 指令 $greeting="Hello";//$greeting為字串變數 $name="Tom";//$name為字串變數 echo $greeting, $name, "!<br>";//顯示變數值 echo "How are you today!";//didn't use any variable echo "<hr>";//畫水平線 print "$greeting $name !<br>";//使用print 函數 print "How are you today!<br>";//didn't use any variable ?>
程式05-05 <br /> 布林與浮點樹轉換成整數<br /> <?php $a=true;//設定變數a值為布林值 echo "a=" . $a . "<br>"; $b=(int) $a;//將true轉換成1 echo $b . "<br>"; echo "b=" . $b . "<br>"; $a=false;//設定變數a值為布林值 echo "a=". $a . "<br>"; $b=(int) $a;//將false轉換成0 echo $b . "<br>"; echo "b=" . $b . "<br>"; $a=3.14159;//設定變數a值為浮點數 echo "a=" . $a . "<br>"; $b=(int) $a;//將3.14159轉換成3 echo $b . "<br>"; echo "b=" . $b . "<br>"; ?>
程式05-06 <br /> 浮點數<br /> <?php $a=15.82; //設定變數a值為浮點數 echo "a=" . $a . "<br />";//.為連接2個文字用 $a=-3.29; //設定變數a值為浮點數,且為負值 echo "a=" . $a . "<br />";//.為連接2個文字用 $a=45.2754e2; //設定變數a值為浮點數,使用10的指數 echo "a=" . $a . "<br />";//.為連接2個文字用 $a=363.145e-3; //設定變數a值為浮點數,使用10的負指數 echo "a=" . $a . "<br />";//.為連接2個文字用 ?> </body>
程式05-07 <br /> 字串變數<br /> <?php $name1="John"; //設定字串變數name1值為John $name2="Tom"; //設定字串變數name2值為Tom echo "Hello! $name1 <br />";//將字串變數name1 顯示出來 echo "Hello! $name2 <br />";//將字串變數name2 顯示出來 $a=-3.29; //設定變數a值為浮點數,且為負值 ?>
程式05-08 <br /> 跳脫字元<br /> <?php //單引號 echo 'This is Nic\'s Notebook ! <br />';//(')單引號, Nic's //雙引號 echo "\"Business Weel\" is not my favorite magazines. <br />";//雙引號 "Business Weel" //跳脫字元 echo "Please check your CD in E:\\ directory. <br />";//跳脫字元 E:\ //錢號$ $price=580;//設定整數變數$price=580 echo "\$price=$price <br />";//顯示$price=580 ?>
程式05-09 <br /> 布林值與迴圈<br /> <?php echo "While loop <br />";//顯示While loop $go_on=true;//設定變數$go_on=true(為真) $a=1;//設定變數$a=1(起始值) While ($go_on) //判斷$go_on為真或假 { echo "$a <br />";//顯示a值 $a++; //$a=$a+1(a值遞增) if (a>5) //判斷a值是否大於5,(>5==>true,<=5==>false) $go_on=false; } ?>
程式05-10 <br /> 陣列<br /> <?php $m[0]="鼠";//設定陣列m的第一個元素為字串"鼠" $m[1]="牛";//設定陣列m的第一個元素為字串"牛" $m[2]="虎";//設定陣列m的第一個元素為字串"虎" $m[3]="兔";//設定陣列m的第一個元素為字串"兔" $m[4]="龍";//設定陣列m的第一個元素為字串"龍" echo "$12生肖的第1個動物是$m[0] <br />";//顯示$m[0}值 echo "$12生肖的第2個動物是$m[1] <br />";//顯示$m[1}值 echo "$12生肖的第3個動物是$m[2] <br />";//顯示$m[2}值 echo "$12生肖的第4個動物是$m[3] <br />";//顯示$m[3}值 echo "$12生肖的第5個動物是$m[4] <br />";//顯示$m[4}值 ?>