php 提交表单 获取来源页面 source_url
时间: 2023-09-06 14:13:53 浏览: 184
您可以在表单中添加一个隐藏的字段,用于存储来源页面的 URL。具体实现方式如下:
1. 在表单中添加一个隐藏的 input 元素,用于存储来源页面的 URL。
```
<input type="hidden" name="source_url" value="<?php echo $_SERVER['HTTP_REFERER']; ?>">
```
2. 在接收表单数据的 PHP 脚本中,通过 $_POST['source_url'] 获取提交过来的来源页面 URL。
```
$source_url = $_POST['source_url'];
```
注意:HTTP_REFERER 有时会被浏览器禁用或伪造,所以不能仅仅依赖于它来获取来源页面的 URL。
相关问题
Python提交表单
Python可以使用requests库来提交表单。通过POST方法,可以向服务器发送表单数据。下面是一个示例代码,用于提交表单数据:
```
import requests
params = {'firstname': 'cck', 'lastname': 'Mi'}
r = requests.post("http://pythonscraping.com/files/processing.php", data=params)
print(r.text)
```
在这个例子中,我们使用requests库发送了一个POST请求,将参数`params`作为表单数据发送到URL为`http://pythonscraping.com/files/processing.php`的服务器上。服务器会将接收到的表单数据进行处理,并返回相应的响应。我们可以使用`r.text`来获取服务器返回的内容。
另外,表单提交也可以用于认证。比如,我们可以使用HTTPBasicAuth来进行基本身份验证。下面是一个示例代码:
```
import requests
from requests.auth import HTTPBasicAuth
auth = HTTPBasicAuth('cck', 'password')
r = requests.post(url="http://pythonscraping.com/pages/auth/login.php", auth=auth)
print(r.text)
```
在这个例子中,我们使用HTTPBasicAuth来进行基本身份验证。我们提供了用户名和密码,然后使用POST方法向URL为`http://pythonscraping.com/pages/auth/login.php`的服务器发送请求。服务器进行身份验证,并返回相应的响应内容。
总结起来,Python可以使用requests库来提交表单数据,并可以通过POST方法实现不同的功能,如发送普通表单数据或进行身份验证。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [Python的提交表单功能](https://blog.csdn.net/JBlock/article/details/79304075)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
axios提交表单post
axios提交表单post的方式是通过设置`method`为`post`,`url`为请求地址,`data`为要提交的表单数据。在`data`中定义一个空的集合,然后使用`v-model`进行赋值。例如:
```javascript
axios({
method: "post",
url: "http://localhost:8080/AddServlet_vue",
data: that.brand
}).then(function (response) {
alert(response.data);
if (response.data == "success"){
location.href = "http://localhost:8080/brand_vue.html"
} else {
alert("error")
}
}, function (err) {
console.log(err);
})
```
这段代码使用了axios库来发送POST请求,将表单数据`that.brand`作为`data`参数传递给请求。在响应中,通过判断`response.data`的值来确定响应是否成功。\[2\]
在服务器端,可以使用PHP来处理这个POST请求。可以通过`file_get_contents('php://input')`来获取POST请求的内容,然后进行相应的处理。例如:
```php
<?php
header("Access-Control-Allow-Origin:*");
$form = file_get_contents('php://input');
exit($form);
```
这段PHP代码设置了跨域请求的头部,然后通过`file_get_contents('php://input')`获取POST请求的内容,并进行相应的处理。\[3\]
#### 引用[.reference_title]
- *1* [axios表单形式提交数据 axios post data by form type](https://blog.csdn.net/Holy_Q/article/details/130309379)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [利用axios和vue进行post表单提交](https://blog.csdn.net/weixin_44239550/article/details/128381634)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [Vue使用axios提交表单数据](https://blog.csdn.net/kevlin_V/article/details/117393198)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文