博客來網路書店查詢
星期五, 1月 20, 2012
星期四, 1月 05, 2012
PHP6與MySQL基礎學習教室讀者來函詢問7-17~7-21問題
近日收到PHP6與MySQL基礎學習教室讀者來函詢問7-17~7-21問題,在此回應如下:
1.不管在表單網頁或接收端$class1~$class3都未寫代表那個科目,PHP會自動辨別??
回答:
表單網頁遺漏了text 工具的名稱,正確寫法應該是:
01 〈html〉〈head〉
02 〈meta http-equiv="Content-Type" content="text/html; charset=utf-8"〉
03 〈title〉輸入三個科目成績〈/title〉〈/head〉
04 〈body〉
05 〈form name="form1" method="post" action="function03.php" 〉
06 國文成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class1"〉〈br〉
07 英文成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class2"〉〈br〉
08 數學成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class3"〉〈br〉
09 〈input type="submit"〉〈/form〉〈/body〉〈/html〉
很抱歉發生這樣的錯誤,之後改版時會做更正。
2.在7-17中,$average1和$averager2的關係為何(function03.php的第08和17行)?
1.呼叫函數時,函數名稱後( )內若有變數作為參數,代表這個函數將接收資料。
呼叫函數時所攜帶的參數數量必須與函數接收參數數量相同。
2.函數執行完成後,最後一行return( )代表將傳回( )內資料。
資料傳回哪裡?傳回呼叫這個函數的那一行語法。
呼叫這個函數的那一行語法會有一個=號,代表右邊資料丟給左邊。
右邊資料可丟甚麼給左邊?就是return( ) 傳回的資料丟給=的左邊。
checknum()函數傳回$average1變數給$average2變數。
關於這個問題,您可參考我所做的簡報檔案說明:
http://www.slideshare.net/jiannrong/hb1004-function3-10817191
3.在function03.php的第05~08以及14行中checknum()函數為何要這樣寫?接收了$_POST['class1~3],chnum()就有平均值產生? 不好意思煩請解答
函數的目的是要降低重複的語法,及提高程式維護性。例如這個練習我們是計算平均成績,可能有一天,學校老師覺得英文很重要,
所以計算平均之前,英文這一科會加25%分數,若您以函數方式來處理,只要修改函數內容即可。這一個範例裡的函數與接收表單的
PHP語法寫在同一個檔案內,您可能認為這差異不大,但是當函數寫在其他檔案內,當PHP以引用檔案方式引用這個函數,這個差異就
比較明顯。接收表單資料的PHP檔案專心接收資料,而計算成績則是另外一個檔案負責。引用其他檔案將在第九章介紹。若第九章看完後,
您可這樣修改
表單網頁改為:
01 〈html〉〈head〉
02 〈meta http-equiv="Content-Type" content="text/html; charset=utf-8"〉
03 〈title〉輸入三個科目成績〈/title〉〈/head〉
04 〈body〉
05 〈form name="form1" method="post" action="function03b.php" 〉
06 國文成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class1"〉〈br〉
07 英文成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class2"〉〈br〉
08 數學成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class3"〉〈br〉
09 〈input type="submit"〉〈/form〉〈/body〉〈/html〉
這一個function03b.php內容為:
01 〈html〉〈head〉
02 〈meta http-equiv="Content-Type" content="text/html; charset=utf-8"〉
03 〈title〉自訂函數:有傳入也有送出〈/title〉〈/head〉
04 〈body〉
05 〈table width="100%" border="1"〉
06 〈tr〉〈td〉平均成績:〈/td〉〈/tr〉
07 〈tr〉〈td〉〈?
08 include("function3c.php");
09 $class1a=$_POST['class1'];
10 $class2a=$_POST['class2'];
11 $class3a=$_POST['class3'];
12 $average2=checknum($class1a,$class2a,$class3a);
13 echo $average2;
14 ?〉
15 〈/td〉〈/tr〉
16 〈/table〉〈/body〉〈/html〉
引用了function3c.php內容為:
01 〈?
02 function checknum($class1,$class2,$class3)
03 {
04 $average1=($class1+$class2+$class3)/3;
05 return $average1;
06 }
07 ?〉
希望這樣的解釋能解決您的疑惑。
1.不管在表單網頁或接收端$class1~$class3都未寫代表那個科目,PHP會自動辨別??
回答:
表單網頁遺漏了text 工具的名稱,正確寫法應該是:
01 〈html〉〈head〉
02 〈meta http-equiv="Content-Type" content="text/html; charset=utf-8"〉
03 〈title〉輸入三個科目成績〈/title〉〈/head〉
04 〈body〉
05 〈form name="form1" method="post" action="function03.php" 〉
06 國文成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class1"〉〈br〉
07 英文成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class2"〉〈br〉
08 數學成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class3"〉〈br〉
09 〈input type="submit"〉〈/form〉〈/body〉〈/html〉
很抱歉發生這樣的錯誤,之後改版時會做更正。
2.在7-17中,$average1和$averager2的關係為何(function03.php的第08和17行)?
1.呼叫函數時,函數名稱後( )內若有變數作為參數,代表這個函數將接收資料。
呼叫函數時所攜帶的參數數量必須與函數接收參數數量相同。
2.函數執行完成後,最後一行return( )代表將傳回( )內資料。
資料傳回哪裡?傳回呼叫這個函數的那一行語法。
呼叫這個函數的那一行語法會有一個=號,代表右邊資料丟給左邊。
右邊資料可丟甚麼給左邊?就是return( ) 傳回的資料丟給=的左邊。
checknum()函數傳回$average1變數給$average2變數。
關於這個問題,您可參考我所做的簡報檔案說明:
http://www.slideshare.net/jiannrong/hb1004-function3-10817191
3.在function03.php的第05~08以及14行中checknum()函數為何要這樣寫?接收了$_POST['class1~3],chnum()就有平均值產生? 不好意思煩請解答
函數的目的是要降低重複的語法,及提高程式維護性。例如這個練習我們是計算平均成績,可能有一天,學校老師覺得英文很重要,
所以計算平均之前,英文這一科會加25%分數,若您以函數方式來處理,只要修改函數內容即可。這一個範例裡的函數與接收表單的
PHP語法寫在同一個檔案內,您可能認為這差異不大,但是當函數寫在其他檔案內,當PHP以引用檔案方式引用這個函數,這個差異就
比較明顯。接收表單資料的PHP檔案專心接收資料,而計算成績則是另外一個檔案負責。引用其他檔案將在第九章介紹。若第九章看完後,
您可這樣修改
表單網頁改為:
01 〈html〉〈head〉
02 〈meta http-equiv="Content-Type" content="text/html; charset=utf-8"〉
03 〈title〉輸入三個科目成績〈/title〉〈/head〉
04 〈body〉
05 〈form name="form1" method="post" action="function03b.php" 〉
06 國文成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class1"〉〈br〉
07 英文成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class2"〉〈br〉
08 數學成績:〈input type="text" maxlength="3" size="3" onkeyup="value=value.replace(/[^0-9]/g,'');" name="class3"〉〈br〉
09 〈input type="submit"〉〈/form〉〈/body〉〈/html〉
這一個function03b.php內容為:
01 〈html〉〈head〉
02 〈meta http-equiv="Content-Type" content="text/html; charset=utf-8"〉
03 〈title〉自訂函數:有傳入也有送出〈/title〉〈/head〉
04 〈body〉
05 〈table width="100%" border="1"〉
06 〈tr〉〈td〉平均成績:〈/td〉〈/tr〉
07 〈tr〉〈td〉〈?
08 include("function3c.php");
09 $class1a=$_POST['class1'];
10 $class2a=$_POST['class2'];
11 $class3a=$_POST['class3'];
12 $average2=checknum($class1a,$class2a,$class3a);
13 echo $average2;
14 ?〉
15 〈/td〉〈/tr〉
16 〈/table〉〈/body〉〈/html〉
引用了function3c.php內容為:
01 〈?
02 function checknum($class1,$class2,$class3)
03 {
04 $average1=($class1+$class2+$class3)/3;
05 return $average1;
06 }
07 ?〉
希望這樣的解釋能解決您的疑惑。
星期五, 12月 30, 2011
2012年新年快樂
2011年即將於24小時後結束,精彩100也將成為100加1,
這一年有收穫也有失落,感謝有你,陪伴了我渡過這一年。
今年我有些事情沒有做好的,期待明年能有所成,不要再食
言而肥,已經不能再胖了...
期待2012,馬雅人所說的新的時代,讓我們一起努力,
祝福結婚的趕快生產報國,100加1。
祝福已經在工作的朋友工作順心愉快。
祝福掌管家計的朋友財源廣進
祝福還在念書的朋友學業進步,學有所成。
祝福大家,身體健康,2012年幸福美滿又得意,龍騰虎躍慶豐業。
星期六, 11月 26, 2011
PHP與MySQL網站規劃管理應用
小弟的第二本書:
使用PHP網站設計,有些時候會碰到網頁編碼、表單處理、session、cookie、PHP如何與MySQL溝通等各式各樣的問題,但您知道要如何將問題一次解決呢?別擔心,這本書將完全解決你的疑惑。
本書一開始先介紹環境與網站規劃,並將網站開發過程分為「設計」、「實作」、「維護階段」三個階段,解決網站不知從何開始的困擾,緊接著介紹網頁編碼、表單處理、session、cookie、PHP如何與MySQL溝通等問題的解決方案,並說明檢測PHP執行SQL語法是否異常的方式,降低網站執行風險,最後逐步說明資料管理與資安控管、物件導向與檔案文件管理,希望協助您不只是設計網站,能更進一步處理網頁、資料庫、檔案與圖檔設計。
此外,本書於附錄內也加入在Mac OS X、ubuntu等系統上安裝Apache+PHP+MySQL的方式,假如您的網頁伺服器是Windows內建的IIS,附錄也說明如何在IIS 7 內安裝PHP與MySQL,使大家可在不同環境內執行PHP與MySQL。
全書共分為三篇
.基礎入門:介紹架站環境與網站規劃、入門者最容易犯的錯誤,以及正規表示式運用及PHP陣列進階操作。
.資料管理與資安控管:介紹網站應用程式安全、MySQL正規化與多資料表查詢,以及資料庫維護與資料庫網頁備援。
.物件導向與檔案文件管理:介紹PHP物件導向設計、檔案上傳與下載、csv文件匯出入與圖檔管理與運用。
本書特色
.完整列出PHP開發網站會碰到的問題,並提出解決方法。
.詳解規劃網站、備援資料和輸出中文字為圖檔的方式。
.說明進行檔案上下傳及csv文件匯出匯入、圖檔管理運用方式。
.強調Apache的各種設定與資安防範,加強網站安全性。
.介紹進行MySQL正規化及多表單查詢操作,增加資料庫穩定性的方法。
這本書可搭配第一本書 希望讓各位設計資料庫網站能更順心如意
PHP與MySQL網站規劃管理應用
使用PHP網站設計,有些時候會碰到網頁編碼、表單處理、session、cookie、PHP如何與MySQL溝通等各式各樣的問題,但您知道要如何將問題一次解決呢?別擔心,這本書將完全解決你的疑惑。
本書一開始先介紹環境與網站規劃,並將網站開發過程分為「設計」、「實作」、「維護階段」三個階段,解決網站不知從何開始的困擾,緊接著介紹網頁編碼、表單處理、session、cookie、PHP如何與MySQL溝通等問題的解決方案,並說明檢測PHP執行SQL語法是否異常的方式,降低網站執行風險,最後逐步說明資料管理與資安控管、物件導向與檔案文件管理,希望協助您不只是設計網站,能更進一步處理網頁、資料庫、檔案與圖檔設計。
此外,本書於附錄內也加入在Mac OS X、ubuntu等系統上安裝Apache+PHP+MySQL的方式,假如您的網頁伺服器是Windows內建的IIS,附錄也說明如何在IIS 7 內安裝PHP與MySQL,使大家可在不同環境內執行PHP與MySQL。
全書共分為三篇
.基礎入門:介紹架站環境與網站規劃、入門者最容易犯的錯誤,以及正規表示式運用及PHP陣列進階操作。
.資料管理與資安控管:介紹網站應用程式安全、MySQL正規化與多資料表查詢,以及資料庫維護與資料庫網頁備援。
.物件導向與檔案文件管理:介紹PHP物件導向設計、檔案上傳與下載、csv文件匯出入與圖檔管理與運用。
本書特色
.完整列出PHP開發網站會碰到的問題,並提出解決方法。
.詳解規劃網站、備援資料和輸出中文字為圖檔的方式。
.說明進行檔案上下傳及csv文件匯出匯入、圖檔管理運用方式。
.強調Apache的各種設定與資安防範,加強網站安全性。
.介紹進行MySQL正規化及多表單查詢操作,增加資料庫穩定性的方法。
這本書可搭配第一本書 希望讓各位設計資料庫網站能更順心如意
訂閱:
文章 (Atom)