Toggle main menu visibility
新聞
下載
教材
影音
討論
其他選單
好站連結
行事曆
電子相簿
常見問題
萬用表單
即時留言簿
友站消息
社大學員
:::
登入
登入
帳號
密碼
登入
重整畫面
:::
所有書籍
「[1002] PHP入門班」目錄
MarkDown
12-1 index.php
1. PHP入門
2. 使用者輸入介面設計
2-1 上課範例:index.php
2-2 上課範例:save.php
3. PHP變數與常數
3-1 上課範例:a1.php
4. PHP資料類型與建立資料表
4-1 上課範例:add_class.php
5. 連線資料庫及運算元
5-1 上課範例:save_class.php
5-1 上課範例:add_class.php
6. 讀取資料庫及PHP陣列
6-1 上課範例:add_class.php
6-2 上課範例:save_class.php
6-3 上課範例:index.php
7. 編輯與刪除功能
7-1 上課範例:index.php
7-2 上課範例:add_class.php
7-3 上課範例:save_class.php
8. 函數與小強佈景
8-1 上課範例:index.php
8-2 上課範例:add_class.php
8-3 上課範例:save_class.php
9. 流程控制與迴圈
9-1 上課範例:add_class.php
9-2 上課範例:theme.html 樣板檔
9-3 上課範例:save_class.php
9-4 上課範例:index.php
9-5 上課範例:header.php
9-6 上課範例:function.php
10. 練習練習再練習!
10-1 上課範例:index.php
10-2 上課範例:add_class.php
10-3 上課範例:save_class.php
10-4 上課範例:index.php(整合版)
10-5 上課範例:header.php(整合版)
11. 建立學習收藏的發布頁
11-1 上課範例:class.php
11-2 上課範例:header.php
11-3 上課範例:tad0616.sql
11-4 上課範例:blank.php 空白樣板
11-5 上課範例:index.php
12. 兩個資料表的結合
12-1 index.php
13. 資料檢查
13-1 上課範例:index.php
13-2 上課範例:header.php
13-3 上課範例:function.php
13-4 上課範例:class.php
14. 請完成基本功能囉~
14-1 上課範例:index.php(完成版)
15. 認證與session
15-1 上課範例:class.php
15-2 上課範例:config.php
15-3 上課範例:header.php
15-4 上課範例:index.php
16. 分頁與編輯器
16-1 上課範例:index.php
16-2 上課範例:header.php
17. 用PHP上傳檔案
17-1 上課範例:index.php
18. 資料搜尋
18-1 上課範例:index.php
18-2 上課範例:theme.html
13-1 上課範例:index.php
\[1002\] PHP入門班 =============== [](http://www.tad0616.net/uploads/tad_book3/file/1002/13.pdf) ### 一、 不要相信使用者 1. 程式開發者永遠把使用者當壞人。 2. 請試著輸入各種亂七八糟的資料到您的表單中,例如「'測試'」、「\\測試\\」、「<font color=red>測試</font>」、「"測試"」 ### 二、 整理資料 1. trim($str,\[$charlist\]):從空白處開始去除資料中的空白、換行、tab...等特殊符號。第二個參數可自訂要刪除哪些字元。 2. ltrim($str,\[$charlist\]):僅清除左邊,rtrim($str,\[$charlist\]): 僅清除右邊。 3. htmlspecialchars($str):將網頁標籤展為特殊字符(即關閉HTML功能) - (1) 「'引號' 設為<b>粗體</b>」會變成「'引號' 設為<b>粗體</b>」 - (2) htmlspecialchars($str,ENT\_QUOTES):連同單引號、雙引號也要轉換 4. intval():將資料轉換成數字型態(32位元系統範圍:-2147483648 to 2147483647 ,64位元系統範圍:9223372036854775807) ``` echo intval(42); // 42 echo intval(4.2); // 4 echo intval('42'); // 42 echo intval('+42'); // 42 echo intval('-42'); // -42 echo intval(042); // 34 echo intval('042'); // 42 echo intval(1e10); // 1410065408 echo intval('1e10'); // 1 echo intval(42000000); // 42000000 echo intval(420000000000000000000); // 0 echo intval('420000000000000000000'); // 2147483647 ``` ### 三、 魔術引號Magic Quotes 1. 當php.ini中的magic\_quotes\_gpc=On時,自動對所有的 GET、POST、COOKIE 資料中,針對 '(單引號),"(雙引號),\\(反斜線)和 NULL 字符都會被自動加上一個反斜線進行轉義。這和 addslashes() 作用完全相同。 2. 魔術引號在 PHP 中用來減少隱碼攻擊風險。(隱碼攻擊:SQL injection,在輸入的字串之中夾帶SQL指令,在設計不良的程式當中忽略了檢查,那麼這些夾帶進去的指令就會被資料庫伺服器誤認為是正常的SQL指令而執行,因此遭到破壞。) 3. 為什麼PHP6不用魔術引號 - (1) 可移植性:因為每台機器設定都不同,容易影響移植性。建議自己用 get\_magic\_quotes\_gpc() 來檢查是否打開,並據此來寫相關處理動作。 - (2) 性能:由於並不是每一段被轉義的資料都要插入到資料庫的,如果所有資料都被轉義的話,那麼會對程序的執行效率產生一定的影響。 - (3) 不便:由於不是所有數據都需要轉義,在不需要轉義的地方看到轉義的資料就很煩。比如說通過表單發送郵件,結果看到一大堆的 \\'。 4. get\_magic\_quotes\_gpc ():用來取得目前魔術引號的設定狀況 5. addslashes():針對 '(單引號),"(雙引號),\\(反斜線)和 NULL 字符都會被自動加上一個反斜線進行轉義。 6. stripslashes():去除反斜線用。 7. 資料新增到資料庫前可以這樣用:$content = (! get\_magic\_quotes\_gpc ()) ? addslashes ($content) : $content; 您可以用「';<script>alert('aaa');</script>」來測試看看。
:::
搜尋
search
進階搜尋
QR Code 區塊
快速登入
所有討論區
「PHP全端開發」線上課程討論區
XOOPS使用討論區
一般研習學員
社大學員專用
路過哈啦區
XOOPS佈景設計
XOOPS模組開發
Tad書籍區
即時留言簿
書籍目錄
展開
|
闔起
線上使用者
58
人線上 (
10
人在瀏覽
線上書籍
)
會員: 0
訪客: 58
更多…