Помогите с реализацией ajax в программе. Потихоньку изучаю PHP программирование, столкнулся с такой проблемой. Есть форма, в форме отсутствует атрибут action. Код (Text): <form name="F1" method="post" id="betslip_form" style="margin-bottom: 0;"> На кнопке, как понял, ajax запрос. Код (Text): <button name="formsubmit" type="submit" onclick="_paq.push(['trackEvent', 'Basket', 'Button', 'click']);" class="btn-clear-pay_busket submit_js">Отправить</button> После нажатия кнопки, данные формы отправляются на сгенерированный адрес. Код (Text): Request URL:https://www.***.com/ajax_basket_index.php?_r=0.15641357748175402 Request Method:POST Request URL:https://www.***.com/ajax_basket_index.php?_r=0.47582239503758117 Request Method:POST Вопрос: Возможно этот запрос реализовать в программе или как то обойти, что-бы данные формы отправлялись куда нужно ?
в JS-коде, который отправляет AJAX, разумеется. Этот адрес может быть там железно прописан, а может вписываться при формировании страницы на сервере, тогда лезть надо будет глубже. У меня другой вопрос - чего вы хотите добиться ковыряя что-то работающее?
Написать программу, которая делала бы анализ, вместо меня. В JS-коде не разбираюсь совсем, поэтому обратился на форум. ajax вроде отправляет, только то что на кнопке ?: Код (Text): <button name="formsubmit" type="submit" onclick="_paq.push(['trackEvent', 'Basket', 'Button', 'click']);" class="btn-clear-pay_busket submit_js">Отправить</button> ещё в форме есть строка: Код (Text): <div class="busket-item busket_item_js" id="s-45de4fefcfb55b062c37abe3325e0ac2">
Она называется "поиск в тексте". CTRL+F в редакторе любом, даже в просмотрщике исходников браузера. На самом деле я хз, что это, зачем тебе это ковырять, зачем менять. Выглядит, как какой-то плагин к какой-то CMS, который, по-хорошему, имеет настройки, которые из админки правятся. Какая цель этих ковыряний-то?
С текстом всё в порядке и не надо ничего менять, сайт не мой. Я пишу программу для анализа событий, на который уходит много времени если вручную. Осталась одна проблема, отправить данные формы.
Какие данные формы? Кому отправить и откуда, учитывая, что сайт не ваш? А как они на этом сайте сформируются? Вы уверены, что понимаете, что делаете?
Данные берутся из выбранного события, их нужно отправить POST запросом, проблема куда. из браузера выглядит так: Код (Text): Request URL:https://www.***.com/ajax_basket_index.php?_r=0.15641357748175402 Request Method:POST Request URL:https://www.***.com/ajax_basket_index.php?_r=0.47582239503758117 Request Method:POST Это не url страницы на которой находится форма, если правильно понял, его генерирует ajax запрос, но как не могу понять
Нашёл вот такие строчки, но ещё не додумался что они значат Код (Text): var $urlAjax='/ajax_basket_index.php?_r='+ Math.random();var $urlAjaxUser='/ajax_index.php?_r='+ Math.random();
Если перейти по url на которые ajax отправляет запросы, там лежит файл "JSON" с текстом внутри Код (Text): {"status":"error","msg":"Неизвестная ошибка"}
Math.random() ничего не прояснил, рандом из чисел пробовал в первую очередь ещё 5 дней назад. Но скрипт отправляет туда данные и получает ответ.
А возможно возможно что скрипт отправляет данные формы в куках ? В запросах из браузера, в куках есть все данные формы, и в исходнике есть что-то про куки.
@Кубик у тега form есть атрибут id и его значение "betslip_form", возможно где-то javascript ждёт когда у формы с id=betslip_form наступит событие submit (отправка формы) и это событие этот javascript код перехватывает, чтобы выполнить ajax запрос. Поищи в коде упоминание betslip_form попробую угадать, там будет указан css селектор #betslip_form
F12 -> Elements -> Event Listeners Там можно посмотреть, какой обработчик висит на форме и где он находится
есть такая строчка, но что это даёт ? Код (Javascript): ;}).delegate('#betslip_form','submit',function(e){if(!is_click){var $bt=$(this).find('.submit_js');
а мне лайк поставить? на счёт кода, дай кусок по больше, может этот промежуточную проверку делает, есть там ещё что-то с betslip_form?
Конечно всё дело в коде, нужно сидеть и разбирать, но не могу понять логически. Скрипт отправляет запросы, на: Код (Javascript): var $urlAjax='/ajax_basket_index.php?_r='+ Math.random(); Но если самому с программы отправить туда запрос, придёт ответ "Неизвестная ошибка". Потому что по этому пути лежит файл "JSON" с текстом внутри: Код (Javascript): {"status":"error","msg":"Неизвестная ошибка"} весь обработчик txt http://my-files.ru/dnrlii
Нужно весь запрос посмотреть, например через fiddler или в google chrome -> F12 -> network -> нажать на запрос (ajax_basket_index.php) смотреть request headers и data/form вроде --- Добавлено --- Код (Javascript): var frm = $(document.F1).serializeArray(); Вот только данные из document.F1 берутся + возможно cookie, данные отправляются через POST. F1 возможно это тег form c name="F1" Надо POST запрос делать как минимум --- Добавлено --- тот код что ты дал в файле, сложно читать, его можно пропустить через http://jsbeautifier.org/
Я один все еще не понимаю, что автор хочет добиться от чужого сайта, и как он это будет реализовывать? Код в исходничках сайта расширением править или что? Так это бесполезно ж. JS к тому времени уже скомпилен и крутится в маленькой уютненькой виртуальной машинке браузера.