
簡単なフォームです
html
1<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>"> 2 <input type="submit" name="submit" value="submit"> 3</form>
もしフォームが送信されたら$_SERVER["PHP_SELF"]を表示します。
PHP
1<?php 2if (isset($_POST['submit'])) { 3echo $_SERVER["PHP_SELF"]; 4}
テストとして、
下記のJAVASCRIPTをブラウザーのURLに入力し、フォームが送信してみても、
$_SERVER["PHP_SELF"]は変わりません。
JAVASCRIPT
1<script>alert('test');</script>
PHPマニュアルを読んでみても、ファイル名はドキュメントルートから取得されるので、
変化はありません。
PHP_SELF'
現在実行しているスクリプトのファイル名です。 ドキュメントルートから取得されます。
どのようにしたら、
$_SERVER["PHP_SELF"]でJAVASCRIPTを実行できるようになるのですか?
※エスケープ処理の勉強をしていて、
この仕組みがわからなかったので、質問しました。
もしブラウザーのURLからファイル名を取得しないなら、
エスケープ処理の意味がないと思いました。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/06/10 11:55
退会済みユーザー
2018/06/10 11:55
退会済みユーザー
2018/06/10 13:02
退会済みユーザー
2018/06/10 13:04