Index.htmlКак запретить пользователям вводить переменную непосредственно в URL-адрес?
<a href='" . $_SERVER['PHP_SELF'] . "?file=" . $file . "' id="okok">
<form action="do" method="post">
<textarea class="source"><?php if(!empty($thesource))echo $thesource; ?>
</textarea>
</form>
<script>
$("#okok").click(function(e) {
e.preventDefault();
var url = $(this).val("href");
$.get(url, function(data) {
$(".source").html(data); //or append }); });
</script>
В основном то, что происходит здесь в том, что, когда пользователь нажимает на ссылку (A HREF = «one.html»), он будет отображать содержимое «one.html» в текстовое поле.
Как только пользователь нажмет на эту ссылку, страница обновится, и URL-адрес будет переписан на http://example.com?file=one.html.
Так как «one.html» включен в переменную «файл», он будет собирать все содержимое, содержащееся в файле «one.html», и отображать его в текстовом поле. Короче говоря, все, что находится в переменной «файл», будет отображаться в текстовом поле.
Проблема заключается в том, что любой человек может переименовать 'one.html' на что-то вроде do.php из URL-адреса, поэтому теперь содержимое в 'do.php' будет отображаться в текстовом поле, что означает, что любой может просмотрите PHP-код этого файла.
Как запретить пользователю вводить переменные в URL-адрес или вводить любые имена файлов PHP в URL-адрес?
Я считаю, что я мог бы использовать Htaccess, но я не уверен, что положить в
не помещайте имя файла, который будет включен в URL. Он решает эту проблему и исправляет * огромный недостаток безопасности в вашей системе. –