首頁 > 後端開發 > php教程 > PHP 和 HTML_PHP教程

PHP 和 HTML_PHP教程

WBOY
發布: 2016-07-21 16:10:03
原創
1097 人瀏覽過


PHP 和HTML
PHP 和HTML 可以互通: PHP 能夠產生HTML, 而HTML 可以傳遞訊息給PHP. 1. 我用一個form/URL傳值時,我要怎麼編碼/解碼? 2. 我在用 標記, 但$foo.x and $foo.y 變數卻不可用. 它們在哪裡? 3. 我怎麼創建HTML

數組? 4. 我怎麼從一個多選框得到所有的結果值?
1. 我用一個form/URL傳值時,我要怎樣編碼/解碼?
在幾個階段裡,編碼是非常重要的. 假設你有一個字符串變量$ data, 它包含一些你要以未編碼方式傳遞的字符, 要經過下面階段的編碼:

HTML 解釋. 為了表示任何一個字符串, 你必須把它包含在雙引號裡, 而且是HTML特殊字元的要使用htmlspecialchars寫法.
URL: URL 由幾個部分組成. 你想你的資料被看成URL的一部分, 你 必須 用 urlencode()編碼它.


例 52-1. 隱藏的 HTML 表單元素 n";?>
注意: 這裡不能用urlencode() $data, 因為urlencode() 資料是瀏覽器的責任. 絕大多數瀏覽器可以正確處理這樣的資料. 無論用何種方法( GET POST). 你可以只考慮GET 請求, 因為POST 請求通常被隱藏了.
例 52-2. 使用者編輯數據 n";    echo htmlspecialchars($data)."n";    echo "";?>
注意: 在瀏覽器視窗顯示的資料會被解碼成可讀的,因為瀏覽器會對HTML 標記進行解釋.
一旦提交, 無論GET 還是POST, 瀏覽器在傳輸資料時會進行URL編碼,PHP則會對它進行解碼. 一切都是自動進行的,你不需要做什麼.
例 52-3. 在URL串裡 n";?>
注意: 實際上你在自己寫一個 GET 請求, 所以用urlencode() 對它進行編碼就是不可缺少的.
注意: 你需要htmlspecialchars() 整個URL字串, 因為URL字串是HTML-屬性的一部份. 這種情況下, 瀏覽器先反-htmlspecialchars() 這個值, 然後送出URL . PHP 會辨識這個URL串串, 因為你用urlencoded() 對它進行了編碼.
你會發現& 在URL 串中被替換成&. 雖然你沒有編碼大部分的瀏覽器也會幫你做,但並不是所有的都能. 所以即使你在寫一個靜態的URL,你也需要用htmlspecialchars() 來對URL 進行編碼.

2. 我在用 標記, 但$foo. x and $foo.y 變數卻不可用. 它們在哪裡?
在提交一個表單裡, 可能使用一個image 控製而不是使用標準的提交按鈕: When 當用戶點上image 控制項的某個地方時, 表單被提交到伺服器,並有兩個附加的變數: foo.x和 foo.y.
因為$foo.x 和$foo.y 在PHP 裡是無效的變數名稱, 所以它們自動被轉換成$foo_x and $foo_y. 也就是說, 圓點被替換成了下劃線.
3. 我怎麼創建HTML
數組?
為了使你的表單結果作為數組送往PHP腳本,你可以給,
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板