$ _POST отвечает обратно на веб-страницу и как обращаться с данными на динамической веб-странице

Я довольно новичок в php, так что эта функциональность ставит меня в тупик, я дам вам картину для контекста. Схема применения для опорного изображения

Таким образом, я могу запросить свою базу данных и установить каждый бит данных для отдельной переменной (может быть, не лучший способ для этой ситуации?)
Но я не знаю, как $ _post эти данные (в форме переменных … :), вероятно, плохая идея, и мне придется устанавливать данные как переменные, где бы я ни работал с формулами, и отправлять информацию только через ajax) вернуться к отображаемой странице (примечание: я не хочу, чтобы моя страница когда-либо обновлялась)
И я предвижу еще одну проблему, и из-за нехватки знаний и неспособности Google ответить на мои вопросы, как я могу установить php Запустить мои алгоритмы и сохранять исходные данные на странице каждый раз, когда мои пользователи меняют одно поле на странице, я хочу все они запускаются на сервере, а не в браузере, поэтому я планирую, чтобы ajax отправлял все данные, включая измененные данные, в php-файл каждый раз, когда они что-то меняли, и сбрасывал информацию на странице после запуска своих формул , Я изучал $ _post и получить и запрос ЭСТ. и не смог мысленно определить, каким образом передача данных будет наиболее эффективной и простой в работе.

Извините за случай, я надеюсь на некоторую конструктивную критику, решения и объяснения для новичка в php, и спасибо за любую помощь.

-3

Решение

Привет, это работает так в jQuery

$.post('url', {input}, function(data){

});

Javascript сделает веб-запрос так же, как если бы вы указали URL в браузере, верно (если это $ .get, то есть, очевидно, мы не можем отправлять данные постов с помощью панели URL браузера, однако вы можете перейти на страницу только без опубликовать данные). Теперь, потому что это AJAX, все возвращаемое входит в данные. Это асинхронный, что означает, что ваш JS не будет ждать запроса, например, если вы поставите

$.post('url', {input}, function(data){

});
alert(data.result);

Он не будет работать по двум причинам, одна из них — область действия (данные — это входной параметр функции, недоступный за пределами функции). Другая причина в том, что оповещение сработает до завершения публикации, даже если оно написано после запроса $ .post. Из-за этого вы должны использовать данные в функции обратного вызова.

Теперь на стороне PHP, где когда-либо этот URL-адрес запускается так же, как вы пошли туда в обычном режиме. По сути, нет никакой разницы для сервера, его AJAX или запрос браузера. Это как отправка формы. Интересное, что вы можете сделать, это вернуть ваши данные в формате JSON. с помощью заголовка JSON приложения и с помощью json_encode() в PHP. Это по сути нотация JavaScript String Object. (не уверен, правильно ли я это помню) но это то, что есть.

В запросе нет магии. Большинство людей на самом деле не понимают, что все, что возвращает сервер — это только текст. Будь то файл PDF, JPG, веб-страница, что угодно, только его текст. JSON позволяет вам сохранить структуру ваших данных, таких как массив. Это специальный формат текста, который JavaScript понимает как объект и массивы.

Я объяснил это одному из моих младших разработчиков на днях. Если вы установите правильные заголовки, вы можете генерировать CSS-файлы с помощью PHP, изображений и т. Д. Потому что это всего лишь текст. Сеть очень проста. У вас есть только получать и отправлять запросы и текст в качестве ответа. Вот и все по большей части.

Тем не мение,

Хорошо, теперь в PHP (для быстрого примера)

  header('Content-Type: application/json');
$a = array('one'=>1);
echo json_encode( $a );

С json_encode() это становится (это ответ, отправленный обратно с сервера)

 '{one:1}'

А в JS на стороне клиента (внутри обратного вызова $ .post) его

  data.one;

Мы можем взять это data в обратном вызове вы можете просто использовать базовый jQuery для замены значений ввода или содержимого тегов HTML возвращенными данными.

    $('#input').val(data);
$('#htmlElement').text(data); // or data.one  - whatever you had in php array keys.

Есть смысл? Выше мы берем использование массива PHP json_encode(), чтобы сделать его строкой JSON, а затем (с правильным заголовком) мы можем получить к ней доступ в JS, используя ее точечный синтаксис. Помните, что я сказал выше только о возврате текста с сервера, поэтому мы должны преобразовать его в строку JSON. Точка в JS похожа на -> в PHP. Вы также можете использовать data['one'] который даже больше похож на PHP, но технически это не правильный путь, если вы знаете, что one является.

Процесс также прост, как у нас есть только post get и текст. Мы можем только делать запросы от клиента и ответы от сервера. Так всегда

 Client Request -> Sever Response -> Client receives response.

Мы не можем, например, позвонить клиенту с сервера.

 Sever Call-> Client receives

Это не работает без таких вещей, как NODE.js или сервер сокетов.

Для справки (об ответах JSON)

Возвращение JSON из PHP-скрипта

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]