Есть код подкорректирован но почему-то данные не передаются по AJAX, а должна записываться 1
и по повторному нажатию записывать 0
. Выводит ошибку.
ВОТ САМ ФАЙЛИК С AJAX:
<?php
header('Access-Control-Allow-Origin: *');
if(isset($_GET['result1']))
{
if($_GET['result1']=="0")
echo '{"ID":"1", "result1":"0"}';
else if($_GET['result1']=="1")
echo '{"ID":"1", "result1":"1"}';
}
?>
var result1 = 0;
var button = document.getElementById('my-button');
var color = true;
button.addEventListener( "click" , function(ev){
if (color) {
this.style.backgroundColor = '#4cff00'
result1 = 1;
} else {
this.style.backgroundColor = '#6b7077'
result1 = 0;
}
var userId = ev.target.dataset.userId;
var userName = ev.target.dataset.userName;
var json = JSON.stringify({
ID: userId,
surname: userName
});
var xhr = new XMLHttpRequest();
xhr.open('GET','http://localhost/tech_user/con_data_ajax/work-ajax-data.php?result1='+result1, true);
xhr.send();
document.getElementById("result1").innerHTML = result1;
color = !color;
});
.cp-pen-styles >input {
width:200px;
height:50px;
}
.group-result {
position: relative;
font-size: 30px;
display:inline-block;
vertical-align: middle;
z-index: 0;
padding-left: 10px;
padding-right:10px;
}
<!DOCTYPE html><html lang='en' class=''>
<head>
<meta charset='UTF-8'>
<meta name="robots" content="noindex">
</head>
<body>
<input id="my-button" type="button" value="WORK" data-user-id ="1" data-user-name= "Копыча">
<div id="result1"class="group-result">0</div>
</body>
</html>
Ошибки, который видны на данный момент:
1. Лишняя закрывающая фигурная скобка в конце php
2. У GET запроса нет тела, поэтому send не должго иметь аргументов
3. open имеет 3 или 5 параметров
xhr.open(method, URL, async[, user, password])
GET запрос передаётся в строке URL, например:
xhr.open('GET', 'con_data_ajax/work-ajax-data.php?result1='+result1, true);
Раз запрос выводит 404, значит неверно указан URL или за него считается часть
['result1']
Попробуйте указать его полностью и/или удалить этот аргумент.
Примерный вид php файла:
<?php
//Проверка на существование записи в массиве _GET
//В этот массив передаются переменные из GET запроса
if(isset($_GET['result1']){
//Проверка значения переменной
//P.S. Желательно обработать переменную прежде чем использовать
//Как пример: $result1 = striptags($_GET['result1']);
if($_GET['result1']=="0")
//Вывод при соблюдении условия
echo '{"ID\":"1", "result1":"0"}';
else if($_GET['result1']=="1")
//Вывод при не соблюдении 1го, но соблюдении 2го условия
echo '{"ID\":"1", "result1":"1"}';
//В ином случае ничего не будет выведено
}
?>
И вид запроса:
xhr.open('GET', 'con_data_ajax/work-ajax-data.php?result1='+result1, true);
Ошибка 404 означает, что страница по заданому URL не найдена
Есть множество картинок с одним классом crypt_img, при ховере на которые нужно чтобы показался соответствующий ему блок с классом crypt_text, которых...
Есть сайт (сторонний) похоже на nodejs подгружает http://cdn1site
Моя задача - подгрузка контента с другой страницыМне потребовалось добавить функцию callback