为什么表单提交插入“?” URL的末尾?以及如何预防呢?
喜欢这个:
<form action="http://www.the-sample-website.com" target="_blank">
<button type="submit">Button Submit</button>
</form>
发送至:http://www.the-sample-website.com/?
正在运行的示例:https://www.w3schools.com/code/tryit.asp?filename=GFUVYSHBKS7K
这是因为您没有指定表单的method
,这就是为什么您要使用GET
方法的原因。
默认method
为GET
,这是在URL
中解析的变量。]>
这就是为什么有时在URL www.example-site.com?id=1
中看到类似这样的示例的原因。在此示例中,GET
变量为id
。根据您的服务器端语言,您可以检索这些变量。
使用PHP的示例:
<?php $myVar = $_GET['id']; ?>
这将存储我之前给出的
GET
示例中解析的URL
变量。
为了防止表单使用GET
method
,请在method
标签中将POST
定义为<form>
。
示例:
<form action="http://www.the-sample-website.com" method="post">
<!-- Your form stuff -->
</form>