使用php和Java的会话
发布时间:2020-12-13 21:37:39 所属栏目:PHP教程 来源:网络整理
导读:我目前正在尝试从applet使用php网页的当前会话.我认为它会很简单,但它并不像我那么强硬.从 php man: session_start() creates a session or resumes the current one based on a sessionidentifier passed via a GET or POST request,or passed via a cooki
我目前正在尝试从applet使用php网页的当前会话.我认为它会很简单,但它并不像我那么强硬.从
php man:
session_start() creates a session or resumes the current one based on a session identifier passed via a GET or POST request,or passed via a cookie. 从那里我做了一些PHP(这里简化): // PAGE1.PHP session_start(); $_SESSION['test'] = true; echo "sid=" . session_id(); // PAGE2.PHP session_start(); if ($_SESSION['test']) $echo "success"; else $echo "fail"; 所以,从我的applet,我向PAGE1.PHP发出请求,它返回会话ID.当我在第2页上执行新请求时,我将会话ID作为参数传递,并且似乎没有保留会话.我用 URL url = new URL("my/url/PAGE2.php?sid=" + session_id); URLConnection conn = url.openConnection(); conn.setDoOutput(true); OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); wr.write(data); // data is the post data created previously wr.flush(); // Get the response BufferedReader rd = new BufferedReader( new InputStreamReader(conn.getInputStream())); String line; while ((line = rd.readLine()) != null) { System.out.println(line); } 我通过POST和GET方法尝试过它似乎不起作用. 所以我想知道是否可能,如果是的话,我会错过什么? 谢谢. 解决方法
您的PAGE2.php实际上并没有使用您通过_GET传递的sid参数来启动会话.
在page2.php中,尝试: session_id($_GET['sid']); session_start(); 而不是普通的: session_start(); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |