0

我必须弄清楚某人的代码...当用户单击提交时,它将转到另一个页面。但文件中似乎没有 $_post、$_get 或 $_REQUEST。我还尝试删除输入标签中的名称和值,它仍然有效。如果我删除表单标签中的方法、名称和 ID,它仍然有效...

如果我删除表单标签,它就不起作用。

   <form method="post" name="my_form" id="50">form content
   <input type="submit" name="val1" value="value"></input>
   </form>

删除方法、名称和 id 后,它仍然有效:

    <form>form content
   <input type="submit"></input>
   </form>

所以我的问题是,您知道还有其他方法可以用于提交表单吗?感谢您的时间。

4

4 回答 4

4

您的代码可能使用 AJAX 请求而不是经典的表单提交方法。如果您注意到 HTML 标记中没有action属性,form而是有一个id属性可以很容易地用于通过 Javascript 选择项目。

例如在jQuery中:

$('#50')...
于 2013-06-19T22:32:28.540 回答
0

如果当您从form标签中删除所有属性时表单仍然有效,并且您找不到对 的任何引用$_POST$_GET或者$_REQUEST在被调用的文件中,它可能register_globals已打开(如果您不在 php 5.4.. .)。

该设置会导致发布的变量自动转换为“正常”变量,就像$val1您的情况一样。

如果是这种情况,强烈建议将其关闭并重写您的代码以使用“普通”超级全局变量(参见手册)。

于 2013-06-19T23:08:06.200 回答
0

我认为杰弗里可能是对的。它可以使用 Javascript 或 Ajax 或 JQuery 或这些的某种组合。在页面的 Javascript 部分中查找链接到表单元素的 onSubmit 事件函数,或者可能链接到提交输入元素的 onClick 事件函数。这很容易调用 document.{formelement}.submit()。鉴于它不工作,它甚至可能在不传递任何数据的情况下调用 window.location() 导航到另一个页面(呃!!!)除非我们能看到更多脚本,否则在黑暗中拍摄。

于 2013-06-19T22:49:08.523 回答
-1

如果它不在该文件中(并记得检查所有包含/需要)

然后服务器正在重新编写它。检查您的 apache 配置文件。

您可以使用 firebug 之类的工具来判断表单正在提交到哪个页面。但是代码的外观是它正在提交到当前所在的页面

于 2013-06-19T22:33:50.030 回答