- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Ещё раз.
js/ajax.js
$(document).ready(function() {
$("#submitLogin").click(function() {
$.ajax({
url: "../ajax/login.php",
type: "POST",
data: {form: $('#formLogin').serialize()},
dataType: "json",
success: function(html) {
var res = $.parseJSON(html);
alert(res);
},
error: function() {
alert('error');
}
});
});
});
login.html
<form id="formLogin" method="post" action="">
<div class="form-group">
<label for="login">Login: </label>
<input id="login" name="login" placeholder="Enter login">
</div>
<div class="form-group">
<label for="password">Password: </label>
<input id="password" name="password" type="password" placeholder="Enter password" />
</div>
<button class="btn btn-primary" id="submitLogin">Submit</button>
</form>
<div id="result"></div>
ajax/login.php
$result = array("form" => $_POST['form']);
echo json_encode($result);
die();
На вкладке "Сеть" всё передается и всё получается, единственное что - ответ от login.php нулевой, несмотря на то, что кол-во переданных байт положительное. С этим, вероятно, и связан error...
1) Файл ajax.js находится в папке /js/
2) Файл login.php, к которому идет обращение, находится в папке /ajax/.
В login.php сделайте
echo json_encode($_POST);
и посмотрите что у вас там реально приходит на сервер.
Вместо
наверное нужно:
В login.php сделайте
echo json_encode($_POST);
Если кликнуть на эту строку то можно будет посмотреть что уходит на сервер, например.
Так-то если по уму - то я бы отладчиком прошёлся. Обычно, если нулевой ответ, то какая-то ошибка на сервере, но код 200 смущает.
1. исходящие данные от сервера в 0 байт. не настораживают?
2. Перед посылкой данных с сервера, в виде джейсона неплохо бы передать и хедер
---------- Добавлено 15.06.2018 в 15:38 ----------
3. парсить json нет необходимости, так как данные парсятся автоматически
success: function(html) {var res = html.variable
alert(res);
},
этого вполне достаточно
---------- Добавлено 15.06.2018 в 15:40 ----------
И передавать данные формы на сервер тоже можно гораздо проще
не
{form: $('#formLogin').serialize()},а
$('#formLogin').serialize(),
silicoid,
всё сделал в соответствии с вашим постом. Не работает!
От сервера приходит 0 байт.... ума не приложу, в чём дело!
silicoid,
всё сделал в соответствии с вашим постом. Не работает!
От сервера приходит 0 байт.... ума не приложу, в чём дело!
А просто в браузере то открывает это файл? Пробовали выводит в нём что-то?
LEOnidUKG,
Смотрите, такая ситуация. Когда в файле прописано
header("Content-type: text/json")
браузер, естественно, предлагает скачать этот файл.
Если этот заголовок убрать - файл открывается абсолютно нормально.
Но ajax не работает ни так, ни так. От сервера 0 байт. Я уже даже и не знаю, каким дебаггером проходиться и где вообще копать. Раньше я работал с ajax, в принципе понимаю, что в целом код верный. Единственное что - я работал с гораздо более ранними версиями, но здесь в плане $.ajax по-моему ничего не поменялось.
загружайте всё на сервер и дайте доступ на тест.