这个是Index.php界面,他的作用只有一个,将session中的内容显示出来。
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<?php
var_dump($_SESSION);
?>
<a href="ShowSession">ShowSession</a>
</body>
</html>
这是第二个界面OnPostMessage.php,他的作用是接收Python的POST请求,并把接受到的数据设置到SESSION中
<?php
session_start();
$loginright = array();
foreach($_POST as $key=>$val)
{
global $loginright;
$loginright[$key] = $val;
}
$_SESSION['loginright'] = serialize($loginright);
print_r($_SESSION);
第三个界面ShowSession.php 作用也是将SESSION显示出来
<?php
session_start();
var_dump($_SESSION);
最后一个文件: SendPost.py这里用Python函数 想第二个界面OnPostMessage.php发送POST数据
import urllib
import urllib2
import httplib
import json
test_data={'ServiceCode':'aaaa','b':'bbbbb'}
test_data_urlencode=urllib.urlencode(test_data)
requrl="http://localhost/PhpProject2/OnPostMessage.php"
req=urllib2.Request(url = requrl,data =test_data_urlencode)
res_ddd=urllib2.urlopen(req)
res = res_ddd.read()
print res
原本希望实现的现象
1. 首先启动 这个PHP程序,界面默认在Index.php这个界面上。
2. 这时候因为没有设置任何SESSION,所以显示出来的SESSION内容也是空的
3. 在这个时候 使用 SendPost.py 想第二个界面OnPostMessage发送POST请求. 第二个界面收到发送的数据之后 将他设置到SESSION中
4. 最后将PHP界面跳转到ShowSession界面上,将SESSION打印出来。
现在遇到的问题:
1. 为什么最后界面ShowSession什么都显示不出来呢? 在上面第三步的时候已经把内送设置到SESSION中了,而且可以在Python函数中捕获到SESSION中设置的值。
这个现象是不是从根本上就错了? 如果错了。想要实现这个需求应该怎么错呢?如果不把数据写文件或者写数据库的话。