Учусь писать ajax код через js, после нескольких монипуляций выползла следующия ошибка - SyntaxError: expected expression, got '<'; В ошибке показывает html файл - - часть. В интернете смотрел, но решения не нашел, возможно вместо js подключается html файл, как исправить не знаю.
window.onload = function() {
document.querySelector("#send").onclick = function() {
ajaxPost('app.php','a=b', function(data) {
document.querySelector('#result').innerHTML = data;
// console.log(data);
});
};
function ajaxPost(url,params, callback) {
const request = new XMLHttpRequest();
request.onreadystatechange = function() {
if(request.readyState == 4 && request.status == 200) {
callback(request.responseText);
}
};
request.open('POST',url);
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
request.send(params);
}
};
<?php /* app.php */
$email = trim($_POST['email']);
$phone = trim($_POST['phone']);
$name = trim($_POST['name']);
$dt = date('Y-m-d H:i:s');
if ($email == '' || $phone == '' || $name == '') {
echo "Заполните все поля";
}
elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo "Введите корректный адрес эл. почты";
}
else {
file_put_contents('apps.txt', '$dt $email $phone $name \n', FILE_APPEND);
echo '1';
}
<?php /* ip.php */
echo $_SERVER['REMOTE_ADDR'];
<!DOCTYPE html> <!-- index.html -->
<html lang="ru">
<head>
<meta charset="utf-8">
<title>Ajax</title>
<script type="text/javascript" src="/js/script.js"></script>
</head>
<body>
<input type="button" id="shop_id" value="Показать мой IP">
<div id="myip"></div>
<form>
Email: </br>
<input type="email" name="email"></br>
Телефон: </br>
<input type="text" name="phone"></br>
Имя: </br>
<input type="text" name="name"></br>
<input type="button" id="send" value="Отправить">
<div id="result"></div>
</form>
</body>
</html>
Сборка персонального компьютера от Artline: умный выбор для современных пользователей