これは非常に単純な質問かもしれませんが、ここで何が間違っているのかわかりません...
わかりやすく説明するために、以下に本当に簡単な例を示します。
<ul>
<li><a href="test.php?link1=true">Link 1</a></li>
<li><a href="test.php?link2=true">Link 2</a></li>
<li><a href="test.php?link3=true">Link 3</a></li>
</ul>
<?php
if(isset($_GET['link1'])) {
if(($_GET['link1']) == 'true') {
echo 'This Is Link 1';
}
}
if(isset($_GET['link2'])) {
if(($_GET['link2']) == 'true') {
echo 'This Is Link 2';
}
}
if(isset($_GET['link3'])) {
if(($_GET['link3']) == 'true') {
echo 'This Is Link 3';
}
}
?>
これは test.php ページです。ここでは、$_GET に 3 つの異なる引数を設定し、それに応じてコンテンツを表示しました。すべてが完璧に機能するようになりました。理解していないのは、この種の URL をブロックする方法だけです。
ユーザーがリンク 1 をクリックすると、URL は次のようになります。
http://localhost/test.php?link1=true
そして、この URL の出力はThis is Link 1 です。
このURLを次のように変更すると:
http://localhost/test.php?link3=true&link2=true&link1=true
そして、私が得た出力は、This Is Link 1This Is Link 2This Is Link 3 です。
ここではこれで問題ありませんが、誰かがこれを入力してフォームが上下に表示されると非常に迷惑です。この改ざんを止める方法はありますか?