Всем здравствуйте) Что имею: Ссылка:
<a href="" title="" onclick="document.dir.folder.value = '<? echo $value?>';
listdir();"><?php echo $value; ?></a>
JS:
function listdir(){
xhttp = new XMLHttpRequest();
xhttp.open('POST', 'App.php', true);
xhttp.send("folder="+document.getElementById('folder').value);
xhttp.onreadystatechange = function() {
if (xhttp.readyState != 4) {
return;
}
if (xhttp.status == 200) {
console.log(xhttp.responseText);
}else{
console.log(xhttp.responseText);
}
}
}
При клике на ссылку заполняется скрытое от user'a поле folder и передаётся js. Всё передаётся верно. Далее посредством аякса на сервер, банальная проверка:
if(isset($_POST['folder'])): echo "Okay";
else: echo 'No';
endif;
Данные не передаются на сервер. В чём проблема? В JS не сильно силён)
Попробуйте установить заголовок как в этом вопросе
http.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
Попробуйте использовать, что то вроде этого (насколько помню подобное используется в yii2):
public function isAjax()
{
return isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] === 'XMLHttpRequest';
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости