使用超級全球$_SERVER['PHP_SELF']
的好處是什麼?
回答
$_SERVER['PHP_SELF']
沒有(或不應該)包含域名。它包含腳本被調用的url的路徑組件。
它的用途主要是介紹跨站點腳本漏洞。
,你可以用它來填表標籤的action屬性:
<form method="post" action="<?=$_SERVER['PHP_SELF']?>"></form>
如果我再打電話給你的頁面:
your-file-that-uses-php-self.php/("><script>eval-javascript-here</script>)
這裏的一切在括號中url編碼,然後我可以將代碼注入您的頁面。如果我將該鏈接發送給其他人,那麼我將在您的網站的瀏覽器中執行該代碼。
編輯: 爲了使其安全免受XSS攻擊,使用htmlspecialchars
:
<form method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>">...</form>
編輯2:由於這$_SERVER
變量已經被整個互聯網絡濫用,所以經常在那裏的例子,唐不要錯過閱讀您的HTML參考資料:由於該URI是最短的相對URI,因此您可以將action屬性留空:
<form action="" method="post" >...</form>
我喜歡這個部分*它的用途主要是介紹跨站點腳本漏洞* ...讓我的最後一個今天得到滿足! – alex 2010-08-10 06:32:01
這就是爲什麼我切換到.NET進行Web開發的一部分。 :) – 2010-08-10 06:44:12
很明顯,.Net是很好的證明。 – 2010-08-10 06:48:52
- 1. PHP中$ _SERVER超級全局的來源是什麼?
- 2. $ _SERVER ['PHP_SELF']和$ _SERVER ['SCRIPT_NAME']之間有什麼區別?
- 3. 過濾PHP的$ _SERVER ['PHP_SELF']
- 4. 如何使用$ _SERVER ['PHP_SELF']?
- 5. $ _SERVER ['PHP_SELF']的替代選擇是什麼?
- 6. 在codeigniter中使用超級對象的好處是什麼
- 7. 在php中使用超全局$ _GET類
- 8. 如何保護$ _SERVER ['PHP_SELF']?
- 9. $ _SERVER ['PHP_SELF']返回什麼?在Laravel中獲得平庸行爲
- 10. 計$ _SERVER [ 「PHP_SELF」]漏洞利用
- 11. $ _SERVER ['PHP_SELF']不起作用?
- 12. php $ _SERVER ['PHP_SELF']包含查詢字符串
- 13. PHP echo $ _SERVER ['PHP_SELF']添加變量?
- 14. 刪除/和.php/html從$ _SERVER ['PHP_SELF']
- 15. 在媒體查詢中使用「全部」有什麼好處?
- 16. 比較變量$ _SERVER ['PHP_SELF']的安全使用情況嗎?
- 17. $ _SERVER ['PATH_INFO']和$ _SERVER ['ORIG_PATH_INFO']有什麼區別?
- 18. 超級類型子類型表有什麼好處
- 19. 使用http設置PHP超級全局變量C
- 20. jQuery相當於$ _SERVER [PHP_SELF]
- 21. 全局變量有什麼不好?
- 22. 刪除R中未使用的級別有什麼好處?
- 23. 爲什麼是$ _FILES超級全局總是空
- 24. 在php中使用匿名函數有什麼好處?
- 25. 使用php echo時的SQL語法錯誤$ _SERVER ['PHP_SELF'];
- 26. 有沒有一種方法可以禁用PHP超級全局的autosuggest?
- 27. '#'和$ _SERVER之間的區別['PHP_SELF']
- 28. 爲什麼全局$ _SERVER數組佔用13倍的內存?
- 29. $ _SERVER ['PHP_SELF']無法正常工作
- 30. $ _SERVER [「PHP_SELF」] Apache/Xampp禁止訪問
我不知道你在問什麼。 – rook 2010-08-10 06:22:02
沒關係,如果你不知道PHP。 – proyb2 2010-08-10 06:30:11
請注意,如果您正在使用'$ PHP_SELF',關閉註冊全局變量:) – alex 2010-08-10 06:30:57