Php URL点击上的数据传输
我不熟悉JSON数据传输。我想让用户点击网页中的链接,这样就可以将用户重定向到另一个页面,并在url中显示他的登录凭据。现在我只想通过JSON发送和接收这些信息。我在PHP环境下工作。我正在添加一个简短的代码,但我不知道如何准确地进行 send.phpPhp URL点击上的数据传输,php,json,url,Php,Json,Url,我不熟悉JSON数据传输。我想让用户点击网页中的链接,这样就可以将用户重定向到另一个页面,并在url中显示他的登录凭据。现在我只想通过JSON发送和接收这些信息。我在PHP环境下工作。我正在添加一个简短的代码,但我不知道如何准确地进行 send.php <?php $data = '{ "user" : [ { "email" : "xyz@gmail.com", "password" : "xyz@12
<?php
$data = '{ "user" : [
{ "email" : "xyz@gmail.com",
"password" : "xyz@123",
"employee_id" : 77
}
]
} ';
$url_send ="http://localhost/cwmsbi/recieve.php";
$str_data = json_encode($data);
function sendPostData($url_send, $post){
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS,$post);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($post))
);
$result = curl_exec($ch);
curl_close($ch); // Seems like good practice
return $result;
}
echo " " . sendPostData($url_send, $str_data);
?>
和receive.php
<?php
$json_input_data=json_decode(file_get_contents('php://input'),TRUE);
print_r( $json_input_data);
?>
现在,当我在本地主机上运行send.php
时,它会在同一页面上显示数据,但不会转到recieve.php
。
如何做到这一点?我很好奇,也需要这个。如何运行
JSON
文件以及在哪里获得结果?您的指导现在对我非常有用。首先,我看到您对$data进行了两次json编码(当它得到定义时,它已经是一个json字符串,然后您进行了$str_data=json_encode($data);
)
如果您也想用post数据实现位置的更改,则不能使用curl
(-阅读这个问题了解更多信息)-我不认为您只能通过php来完成
如果我试图实现您想要实现的目标(而且我永远不会制作一个页面向用户显示登录密码——因为即使在电子邮件中显示密码也是不好的做法),我建议将json字符串设置为send.php中的$\u SESSION
变量,并使用标题重定向(“位置:http://localhost/cwmsbi/recieve.php")
从$\u会话
变量获取json数据并打印
我没有举一个例子,因为我认为这个例子非常适合你:
额外提示:即使将密码放在php$\u会话变量中比将其放在post请求中要好,但请记住,您的做法不好,至少要记住在打印完密码后清空$\u会话变量中的json字符串
e、 g:
谢谢你这么详细的描述。按照你的说法,我想先知道几件事。1.如果我将使用
会话
,那么为什么我需要使用JSON?2.我实际上想从一个.net项目中获取凭据,然后在PHP项目中处理它。可能吗?再次感谢如果我的回答符合你的问题,请标记为已接受。1.我保留了JSON数据编码,因为您需要使用JSON编码。当然,您也可以直接在$\u会话数组中设置这样的变量,使用一个元素为每个元素设置适当的键。2.因为这不是问题的一部分,所以我的回答是作为问题的解决方案(我们从哪里得到php文件,当然是同一台服务器)。当然,如果您需要有关编辑您的问题或使用适当的示例创建新问题的帮助,可以从不同的平台同步或导入凭据。
unset($_SESSION['user_data']);