易截截图软件、单文件、免安装、纯绿色、仅160KB

PHP Cookie与Session跨域访问、传递


晚上特意花了个时间,自己动手试了下。
在项目中一直碰到Cookie跨域访问及SessionId跨域传递问题
范例:
index.php
<?php
include_once('a.php');
session_start();
$_SESSION['k'] = uniqid();
setcookie("sess", session_id(), time()+3600, "/", ".ipggg.com");
echo "index.php<br />\n";
echo $_SESSION['k'].'<br />';
echo "<mce:script src="http://www.ipggg.com/test/b.php" mce_src="http://www.ipggg.com/test/b.php"></mce:script>";
var_dump($_COOKIE);
echo "<br />\n";
?>
    
a.php
<?php
header('Content-type: text/html; charset=utf8');
/*
我注释掉P3P还是可以,难道是因为我RP太高?!
用IE7或者火狐都可以访问到值;
使用环境Vista home + xampp-win32-1.7.1套装
*/
//header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"');
/* memory_limit是设置PHP使用内存时空间,一般设置为内存的四分之一,应该就查不多了。 */
@ini_set('memory_limit', '64M');
/* 指定会话模块是否在请求开始时自动启动一个会话。默认为 0(不启动)。 */
@ini_set('session.auto_start', 0);
/* 以分钟数指定缓冲的会话页面的存活期,此设定对 nocache 缓冲控制方法无效。默认为180 */
@ini_set('session.cache_expire', 180);
/* 指定是否启用透明 SID 支持。默认为 0(禁用)。
包含着会话名以及会话 ID 的常量,格式为 "name=ID",或者如果会话 ID 已经在适当的会话 cookie 中设定时则为空字符串。 */
@ini_set('session.use_trans_sid', 0);
/* 指定是否在客户端用 cookie 来存放会话 ID。默认为 1(启用)。 */
@ini_set('session.use_cookies', 0);
/* 标志着作为访问的Cookie只能通过HTTP协议。不过使用AJAX用PHP访问就可,纯JavaScript无效!只能防范一点点,而且不是所有浏览器都支持。 */
@ini_set("session.cookie_httponly", 1);
/* 这个应该不用多说,PHP错误开关 */
@ini_set('display_errors', 1);
?>

b.php
<?php
include_once('a.php');
session_id($_COOKIE['sess']);
session_start();
setcookie("test", $_SESSION['k'], time()+3600, "/", ".ipggg.com");
?>

设置C:\WINDOWS\system32\drivers\etc\hosts
引用
127.0.0.1 


相关文档:

PHP将全角空格转成半角, 并去除头尾空格

<?php
/* 字体转换
$content 内容
$to_encoding 目标编码,默认为UTF-8
$from_encoding 源编码,默认为GBK
*/
function mbStrreplace($content,$to_encoding="UTF-8",$from_encoding="GBK") {
$content=mb_convert_encoding($content,$to_encoding,$from_encodin ......

AJAX中文乱码PHP完美解决

最近在做一个项目,遇到AJAX中文乱码问题,经过一个下午的努力终于完美解决,现将心得写下来,希望对那些还困绕在这个问题而头痛不已的人们有所帮助。
众所周知,使用AJAX传送和接收中文参数时,如果不在客户端和服务器做相应的处理就会出现乱码问题,在网上相应的文章也不少,但是有的情况下很难从中找到符合自己理想的答 ......

关于PHP中的路径问题

1、使用绝对路径包含文件
    在每次对文件的包含中,都使用系统绝对路径进行包含,比如 require('/var/www/html/inc/test.inc');的方式,在所有文件中都这样包含就可以避免多级包含出现的问题,但是这中方式不灵活,系统可移植性极差,建议不采用。
2、在一个公用文件中定义公用文件的列表,将各个公用文件的 ......

php文件系统函数库

basename: 返回不含路径的文件字符串。
chgrp: 改变文件所属的群组。
chmod: 改变文件的属性。
chown: 改变文件的拥有者。
clearstatcache: 清除文件状态快取。
copy: 复制文件。
delete: 无用的项目。
dirname: 取得路径中的目录名。
diskfreespace: 取得目录所在的剩余可用空间。
fclose: 关闭已打开的 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号