问题:
$uuid = $_SESSION[‘deviceId’]; $lasttime = time(); $movieAccount = $_SESSION[“name”]; if( $uuid !=null){ post a.com/B.php }
怎么把这几个参数 post 到a.com/B.php ,a.com/B.php 又怎么接收这几个参数
解决方法
要将 $uuid
, $lasttime
, 和 $movieAccount
这几个参数通过 POST 请求发送到 a.com/B.php
,并在 B.php
中接收这些参数,你可以使用 PHP 的 cURL
库。下面是一个示例,展示了如何使用 cURL
发送 POST 请求,以及如何在 B.php
中接收这些参数。
发送 POST 请求的 PHP 代码
<?php
session_start(); // 确保你已经启动了会话
$uuid = isset($_SESSION['deviceId']) ? $_SESSION['deviceId'] : null;
$lasttime = time();
$movieAccount = isset($_SESSION["name"]) ? $_SESSION["name"] : null;
// 检查 $uuid 是否不为空
if ($uuid !== null) {
// 要发送的数据
$postData = [
'uuid' => $uuid,
'lasttime' => $lasttime,
'movieAccount' => $movieAccount
];
// 初始化 cURL 会话
$ch = curl_init();
// 设置 cURL 选项
curl_setopt($ch, CURLOPT_URL, "http://a.com/B.php"); // 目标 URL
curl_setopt($ch, CURLOPT_POST, true); // 使用 POST 方法
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData)); // 要发送的数据,使用 http_build_query 编码为 URL 查询字符串
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 将 curl_exec() 获取的信息以文件流的形式返回,而不是直接输出
// 执行 cURL 会话并获取响应
$response = curl_exec($ch);
// 检查是否有错误发生
if (curl_errno($ch)) {
echo 'cURL Error: ' . curl_error($ch);
}
// 关闭 cURL 会话
curl_close($ch);
// 处理响应(可选)
echo $response;
}
?>
在 B.php 中接收参数的 PHP 代码
<?php
// 检查 POST 请求是否包含所需的数据
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['uuid'], $_POST['lasttime'], $_POST['movieAccount'])) {
$uuid = $_POST['uuid'];
$lasttime = $_POST['lasttime'];
$movieAccount = $_POST['movieAccount'];
// 在这里处理接收到的数据
echo "Received UUID: " . htmlspecialchars($uuid) . "<br>";
echo "Received Last Time: " . htmlspecialchars($lasttime) . "<br>";
echo "Received Movie Account: " . htmlspecialchars($movieAccount) . "<br>";
// ... 其他处理逻辑 ...
} else {
echo "Invalid request.";
}
?>