使用超級全球$_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. 過濾PHP的$ _SERVER ['PHP_SELF']
- 3. $ _SERVER ['PHP_SELF']的替代選擇是什麼?
- 4. 如何保護$ _SERVER ['PHP_SELF']?
- 5. 計$ _SERVER [ 「PHP_SELF」]漏洞利用
- 6. $ _SERVER ['PHP_SELF']不起作用?
- 7. $ _SERVER ['PHP_SELF']返回什麼?在Laravel中獲得平庸行爲
- 8. PHP echo $ _SERVER ['PHP_SELF']添加變量?
- 9. 比較變量$ _SERVER ['PHP_SELF']的安全使用情況嗎?
- 10. $ _SERVER ['PATH_INFO']和$ _SERVER ['ORIG_PATH_INFO']有什麼區別?
- 11. 超級類型子類型表有什麼好處
- 12. 使用php echo時的SQL語法錯誤$ _SERVER ['PHP_SELF'];
- 13. 全局變量有什麼不好?
- 14. 爲什麼是$ _FILES超級全局總是空
- 15. 在php中使用匿名函數有什麼好處?
- 16. $ _SERVER ['PHP_SELF']無法正常工作
- 17. 爲什麼全局$ _SERVER數組佔用13倍的內存?
- 18. 什麼是讀取PHP $ _REQUEST超全局的安全方法?
- 19. 在父母,超級和基類在PHP中有什麼不同?
- 20. php首先執行表單action =「<?php echo $ _SERVER ['PHP_SELF'];?>
- 21. 使用類型安全的集合類有什麼好處?
- 22. 可以$ _FILES超級全局在
- 23. 分離php和html有什麼好處?
- 24. 使用提取的PHP超全球植物有什麼風險?
- 25. 使用Python類有什麼好處嗎?
- 26. 使用sessionStorage有什麼好處?
- 27. 使用ExecutorService有什麼好處?
- 28. 使用JDBC模板有什麼好處?
- 29. 使用oozie包有什麼好處?
- 30. 爲JCE使用fips有什麼好處?
我不知道你在問什麼。 – rook 2010-08-10 06:22:02
沒關係,如果你不知道PHP。 – proyb2 2010-08-10 06:30:11
請注意,如果您正在使用'$ PHP_SELF',關閉註冊全局變量:) – alex 2010-08-10 06:30:57