POST без метода формы (PHP)

Есть ли способ передать материал с одной страницы на другую, используя метод POST без использования форм.

Как в get вы можете просто добавить ? с тем, что вы хотите отправить. Можете ли вы сделать что-то для публикации.

Я также прочитал еще один поток, который сказал использовать сеансы. Но сеансы сохраняются на компьютере пользователя как файлы cookie, а файлы cookie небезопасны.

Так есть ли другой способ сделать это? Как описать что-то на первой странице, а затем передать его на вторую страницу.

Также было бы хорошо, если бы кто-нибудь мог объяснить мне, как работает метод POST? И как он передает данные?

Solutions Collecting From Web of "POST без метода формы (PHP)"

Вы должны использовать jQuery. вы можете использовать в нем функцию ajax() . Перейдите по приведенной ниже ссылке и прочитайте полное описание ее с помощью списка функций, чтобы помочь вам. Но все же вот пример кода для вас —

HTML CODE ::::::::

 <hmtl> <head> <script type="http://code.jquery.com/jquery-1.5.1.min.js"></script> </head> <body> <div class="my-fake-form"> <input id="posting-value-1" type="text" /> <a id="submit-form-link" href="#submit">Submit this Div!</a> </div> </body> </html> 

AJAX CODE ::::::::

 function fake_form_submit () { var post = $('input#posting-value-1').val(); $.ajax({ 'url': 'your-php-file.php', 'type': 'POST', 'dataType': 'json', 'data': {post: post}, 'success': function(data) { if(data.finish) { $("div.my-fake-form").attr("innerHTML","Form Submited!"); } else { $("div.my-fake-form").attr("innerHTML","Form Not Submited!"); } }, beforeSend: function() { $(document).ready(function () { $("div.my-fake-form").attr("innerHTML","Loading...."); }); }, 'error': function(data) { $(document).ready(function () { $("div.my-fake-form").attr("innerHTML","ERROR OCCURRED!"); }); } }); } $(document).ready(function () { $('a#submit-form-link').click(function (e) { e.preventDefault(); fake_form_submit(); }); 

PHP CODE ::::::

 <?php $post = $_POST['post']; //Do Something with the value! //On Succes return json encode array! echo json_encode(array("finish" => true)); ?> 

ССЫЛКИ ::::::

* AJAX ОПИСАНИЕ ССЫЛКИ

* AJAX FUNCTIONS LINK

* AJAX LEARNING LINK

Просто используйте сеансы.

Хранение сеансов в файле cookie соответствует указанным выше ответам, ограниченным идентификатором сеанса. Куки-файлы даже могут быть настроены для отправки только в виде HTTP-файлов cookie, если вы настроены на безопасность.

На запрашивающей странице установите желаемую пару ключа сеанса. На запрошенной странице запросите ранее установленный ключ сеанса (сначала проверьте, существует ли он). В php.ini вы можете использовать cookie сеансов только как HTTP-только, чтобы у вас было больше безопасности.

Кроме того: размещение данных может быть таким же простым, как использование AJAX или cURL, как описано выше.

На стороне сервера вы можете достичь этого, используя расширение cURL . Учебник: здесь я не на 100% уверен, что вы ищете серверное решение?

вы можете использовать запросы Ajax для отправки запросов POST на сервер. или cURL на стороне сервера.

Вам понадобится javascript, если вы хотите использовать POST из браузера и сделать его похожим на ссылку:

вы можете использовать функцию submit (). например, http://www.javascript-coder.com/javascript-form/javascript-form-submit.phtml .

но если вы хотите, чтобы он действовал как GET, почему бы не использовать GET?

Чтобы отправить запрос в POST со страницы, вы можете сделать это с помощью JQuery.post (в этом случае вы должны использовать библиотеку) или cURL (в php)

Один из способов – использовать JavaScript для отправки невидимой формы. HTML:

 <button id="my-button">Go to other page</button> <form id="my-form" method="POST" action="/other-page" style="display: none"> <input type="hidden" name="param1" value="value1"> <input type="hidden" name="param2" value="value2"> </form> 

JavaScript (jQuery):

 $("#my-button").click(function(e) { $("#my-form").submit(); }); 

Вы также можете использовать ссылку (тег <a> ) вместо кнопки и т. Д.

Это заставит браузер перейти на другую страницу. Если вы хотите остаться на текущей странице и просто разместить некоторые данные в фоновом режиме, используйте функции ajax в jQuery или аналогичных библиотеках.