[請益] 關於$_GET的一些問題

看板PHP作者 (isDray)時間10年前 (2014/04/05 20:42), 編輯推噓0(0013)
留言13則, 2人參與, 最新討論串1/1
我是一個新手,幾天前看到書上寫 <a href="" id="a"> <a href="" id="b"> <?php switch($_GET['id']){ case 'a': include(a.php); break; case 'b' include(b.php); break; } ?> 大概是這樣子去達到一個區塊頁面切換的效果,所以在點下超連結時本身就會傳遞ID值嗎? 然後$_GET就能直接抓到嗎? (程式碼可能有點小遺漏) -- ◢◤ 30 seconds until minions spawn \ / ▃▃◣▁︿/ ▉▇v╱◥ ▉▉WW -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.102.135.174 ※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1396701771.A.126.html

04/05 20:58, , 1F
no, 不會
04/05 20:58, 1F

04/05 20:58, , 2F
你應該要寫在 href 內,例如 id=value
04/05 20:58, 2F

04/05 20:59, , 3F
ex: <a href="sample.php?id=value">Link</a>
04/05 20:59, 3F

04/05 20:59, , 4F
另外值得注意的是,這種東西叫做 Query String
04/05 20:59, 4F

04/05 21:00, , 5F
data1=value1&data2=value2
04/05 21:00, 5F

04/05 21:00, , 6F
當你要傳遞英文數字以外的東西 value的部分必須要編碼
04/05 21:00, 6F

04/05 21:01, , 7F
否則無法讓瀏覽器解讀/發送正確的資料,伺服器也無法正確得到
04/05 21:01, 7F

04/05 21:02, , 8F
另外還有,如果你要輸出 query string 在 link/html 上
04/05 21:02, 8F

04/05 21:03, , 9F
需要使用 htmlspecialchars 做跳脫 避免不必要的攻擊
04/05 21:03, 9F

04/05 21:03, , 10F
至於 value 的編碼,可以使用 rawurlencode
04/05 21:03, 10F

04/05 21:04, , 12F
這方面的資訊,請上 php 官方網站查詢為主
04/05 21:04, 12F

04/09 23:50, , 13F
很深奧的樣子
04/09 23:50, 13F
文章代碼(AID): #1JF_fB4c (PHP)