如何使用没有表单的Post方法

时间:2010-12-13 16:27:15

标签: php post get

我是那种花费更多时间在Web项目中寻找错误并纠正它们的那种,但我仍然有一个关于使用GET和POST方法的问题

总而言之,我经常将GET方法用于可能来自链接或简单按钮的查询示例:

<a href="example.php?n=2030004">Click me</a>

和表单(注册,登录或评论)我使用post方法。但问题是:

有时候(例如多步注册),我可能需要将从第1页中的表单收集的信息传递给第2页(用户可以在其中找到例如验证码)。如果验证码测试是Okey,则将它们发送到数据库。但问题是,如何在不使用隐藏表单的情况下通过POST方法将这些信息传递到下一页? 我是否需要使用套接字从头开始重新创建POST方法?

谢谢

5 个答案:

答案 0 :(得分:6)

您可以使用JavaScript(jQuery):

首先你需要加载jQuery(使用谷歌作为主机或下载它):

<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.js"></script>

则...

    <script type="text/javascript">
    $(document).ready(function() {
         $('#Link').click(function() {
              $.post("example.php", { n: "203000"} );
         });
    });
    </script>

<a id="Link" href="#">Click me</a>

修改

之后将其保存在example.php中的SESSION

$ _SESSION['N'] = (int) $_POST['n'];

此值将存储在服务器端。并绑定到客户端会话,直到他关闭浏览器或它设置服务器端的该会话的时间用完。

<强> EDIT2 : 还有另一种可能发布请求,是的.. 但我自己不喜欢这种方法...... 这是使用的形式,OP不想要的东西。

<form name="myform" action="example.php" method="POST">
    <input type="hidden" name="n" value="203000">
       <a id="Link" onclick="document.myform.submit()" href="#">Click me</a>
</form>

答案 1 :(得分:3)

使用会话存储数据,直到您提交它们: http://de.php.net/manual/en/intro.session.php。 使用会话有很大的优势, 一旦验证了数据,就可以存储它。

请记住,用户可能会操纵POST请求!

答案 2 :(得分:1)

如果问题是在页面之间传递信息(如多步骤形式),则应使用会话(如果使用的是PHP)。 顺便发送一个没有表单的POST请求,你需要像example

一样使用CURL

答案 3 :(得分:1)

该语句是浏览器用来启动POST / GET数据关系的HTML语言语句。浏览器是执行环境。

您可以使用其他语言(及其执行环境),例如Java,Java Script,C#等来启动HTTP POST / GET数据关系。

答案 4 :(得分:0)

很抱歉,如果我没有正确理解您,但是从我正在阅读的内容中,您想要访问第1页上输入的表单数据(使用带有post方法的表单)?如果是这样,请使用$ _POST自动全局数组。例如,$ nameOnPage2 = $ _POST ['nameFromPage1']。您不必在第二页上为此创建表单。