На моей search.php
странице, где пользователи могут искать вещи по городу / местоположению, поиск осуществляется через JQuery / AJAX на страницу с именем search_data.php
, а результаты возвращаются на search.php
.
Теперь вот что я делаю:
На search.php
У меня есть это:
$_SESSION['verid'] = randomid(12);
$_SESSION['verkey'] == randomid(12);
randomid
- это функция, которая генерирует 12 случайных символов. Эти две переменные сеанса отправляются вместе с запросом jquery $.post
как переменные javascript (с именами "vuid" и "vukid")
Вкл. search_data.php
У меня есть это:
if ($_POST['vuid'] != $_SESSION['verid']) {
header('Location: http://mysite.com/');
die();
} else {
if ($_POST['vukid'] != $_SESSION['verkey']) {
header('Location: http://mysite.com/');
die();
} else {
//both keys correct. process Jquery data.
}
При использовании этого метода он не позволит кому-либо вручную перейти на search_data.php
, пытаясь совершить вредоносные действия (я думаю?), И только Jquery сможет получить к нему доступ.
У меня вопрос, есть ли какая-то "дыра", которую я здесь не вижу? Это хороший способ защитить веб-страницы такого типа?