作者dinos (█★█◣㊣◥█████)
看板Web_Design
標題Re: [問題] asp session相關的問題
時間Tue Feb 13 23:36:50 2007
※ 引述《TCH (最無價值單身漢)》之銘言:
: Session變數,若是在同一個目錄下傳遞不成問題。
: 但是如果是:http://10.111.111.001/a.asp → http://10.111.111.002/b.asp
: b.asp根本無法接到Session。
: 我的目的是要在a.asp做login的動作,成功才會導入b.asp
: 不希望也不允許讓b.asp直接開啟,也就是不能跳過a.asp而直接開啟b.asp
: 所以既然Session不能直接用,我想到其他方法
: 1.傳URL變數(可行,但是網址暴露了安全)
: 2.設虛擬目錄(我是初學者,不太會設,尤其是權限的部份不太清楚)
: 3.傳asp的變數(可以嗎?如果是表單變數好像派不上用場)
: 4.Session真的不能嗎?(我還在掙扎..)
: :
: :
: 懇請有經驗者幫我解答,謝謝!
001/a.php
......
[tailer]
$f=str_replace('=','.',
base64_encode((tempname('/root/session','sess_').date("U"))));
$F=fopen('/root/session/'.$f,"w");
fputs($F,'d'.session_id().'s');
fclose($F);
header('Location:......002/b.php?s='.$f);
===============================
001/s.php
<?php
if(!isset($_GET['s']) || !preg_match("/^[a-zA-Z0-9\.]+$/",$_GET['s']) ||
!file_exists('/root/session/'.$_GET['s']))die('');
$f=fopen('/root/session/'.$_GET['s'],"r");
$s=fgets($f);
fclose($f);
echo $s;
?>
===============================
002/b.php
[header]
$checkedsession=false;
if(($f=fopen('
http://...001/s.php?s='.$_GET['s']))==false)die('you die');
$F=fgets($f);
fclose($f);
if(!preg_match("/^d[a-z0-9]{32}s$/",$F))die('exit');
........
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.158.15
推 TCH:謝謝! 不知用ASP是否可行呢?(抱歉我是初學者,沒用過php) 02/14 23:21
推 dinos:放棄旁門左道吧...<(‵^′)> 02/15 10:05