0

假设我要使用 www.mysite.com?user=myuser 发布到站点,这会模拟与该表单关联的提交按钮吗?如果是这样,如果表单中有多个提交按钮会发生什么?

此外,如果该按钮的 html<input name="button" class="button" type="button" value="Save" onclick="javascript: submit()" disabled>与“禁用”属性类似,这是否意味着我无法发布 www.mysite.com?user=myuser/won't work?

<form name="Form" method="post" action="/thisAction.do">
    <input type="text" name="inquiryNo" maxlength="11" value="" onkeyup="javascript: checkNo()">
    <input name="buttonInquire" class="button" value="Inquire" onclick="javascript: submitInquire()" type="button">

    <!--Then comes a number of other inputs-->
    <input.../>
    <input.../>
    <input.../>

    <input name="modify" class="button" type="button" value="Save"
            onclick="javascript: submitModify()" disabled>

</form>

这是一些示例代码,因为它是我不允许分享的工作内容。因此,当我使用查询操作时,一个新帐户成功加载,详细信息显示在页面上。修改操作旨在“修改”这些详细信息,但它只返回页面上显示的相同详细信息。我没有得到任何反馈。

4

2 回答 2

0

可以使用查询字符串( 之后的内容?)发布到 URL,并且由于您说您正在使用urllib2参数data,这就是发生的情况。然后,服务器可以读取 POST 数据和查询字符串,并做它想做的任何事情,尽管大多数时候它们被合并在一起或者查询字符串被完全忽略。

disabled只会阻止您单击浏览器中的按钮(即使那样,您也可以使用 Firebug 之类的工具取消禁用它)。您可以将任何您想要的内容发布到您想要的任何 URL;HTML 无法阻止您,但如果服务器愿意,它仍然可以给您一个错误。


我认为您的问题是“查询”是默认操作,并且您的 POST 有问题。因此,无论您发送什么,服务器都无法识别它并退回到“查询”。

看起来该表单旨在发送modify=Save。你能发布你实际运行的 Python 代码吗?

于 2013-01-18T00:06:05.183 回答
-1

不,您实际输入的是 GET 方法。

提交数据有两种方式:POST 和 GET。

Post 是通过使用网页中的表单提交数据,该表单在后台发布到另一个表单,而 GET 将数据设置在 url 本身中,如 user=myuser。

如果 Web 程序员实际上正在检查 POST 方法,大多数情况下使用 GET 方法(url 查询字符串)将不起作用。如果程序员正在等待 GET 请求并且您实际 POST 请求,也会发生同样的情况。

但是有一个名为 REQUEST 的 php var 可以与 GET 和 POST 一起使用。

我不是 PHP 方面的专业人士,但是因为您目前没有答案,所以我尽力解释它。希望有高手过来解释一下。

您在我回复时编辑了您的问题,因此您需要有人回答您的第二个问题。

于 2013-01-17T23:56:14.603 回答