session奇怪问题...郁闷了半天。。。。 <frame>里的内容属于另一个网页,SESSION不能跨FRAME传递 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 啊?那我要放在<frame>里面,会有办法解决吗? ding :(没有高手帮忙吗???? 说的详细一点你的form在iframe里面?post到哪里去了?? 以下 是我的Index.php 的frame部分<frameset frameSpacing="0" border="false" frameborder=NO rows="91,*" noMargin marginHeight="0" marginWidth="0" id="frameMain"> <frame name="top" src="top.php" frameBorder="0" scrolling="no" noMargin marginHeight="0" marginWidth="0" noResize borderColor="#0a2689"> <frame name="main" src="http://lyric.qw.to/" frameBorder="0" scrolling="auto" noMargin marginHeight="0" marginWidth="0" noResize> </frameset>而 http://lyric.qw.to/ 打开后是个登入页面,代码如下:<HTML><HEAD><TITLE>Administrative Page</TITLE><link href="../style.css" rel="stylesheet" type="text/css"><script language="JavaScript">function chklogin(){ var e=document.frmLogin; if(e.username.value==""){ alert("请输入用户名。"); e.username.focus(); return false; }else if(e.password.value==""){ alert("请输入密码。"); e.password.focus(); return false; }}</script></HEAD><BODY><table border="0" cellspacing="1" cellpadding="2" width="250" bgcolor="#000000" align="center"> <form action="login.php" method="post" name="frmLogin" onSubmit="return chklogin();"> <tr class="title"> <td align="center" colspan="2">管理员登录</td> </tr> <tr class="body"> <td width="50" align="right">用户名:</td> <td><input type="text" name="username" class="blank"></td> </tr> <tr class="body"> <td width="50" align="right">密码:</td> <td><input type="password" name="password" class="blank"></td> </tr> <tr class="subtitle"> <td align="center" colspan="2"><input type="submit" value="提交" name="submit" class="blank"></td> </tr> </form></table><!--<a href="man_region.php">地区管理</a><br/>--><!--<a href="man_lyrics.php">歌词管理</a>--></BODY></HTML>递交后的login.php 代码如下:<?php session_start(); include("cls_dbfunctions.php"); include("cls_functions.php"); if(array_key_exists("username",$_POST)) $user=$_POST['username']; else exit("PERMISSION DENIED."); if(array_key_exists("password",$_POST)) $pwd=$_POST['password']; else exit("PERMISSION DENIED."); $db=new DB_Functions(DB_SERVER,USERNAME,PASSWD); $db->SelectDB(DB_NAME); $sql="SELECT * FROM lyrics WHERE user='".$user."'"; $result=$db->QueryDB($sql); while($row=$db->FetchRecord($result)) $passwd=$row['passwd']; $db->FreeResult($result); $db->CloseDB(); if($pwd==$passwd){ $_SESSION['user']=$user; echo "<meta http-equiv=\"refresh\" content=\"0; url=man_lyrics.php\">"; }else{ $_SESSION['user']=""; exit("PERMISSION DENIED."); }?>上面这个url=man_lyrics.php 中的 man_lyrics.php代码如下:<?php session_start(); if($_SESSION['user']=="") exit("PERMISSION DENIED."); include("cls_dbfunctions.php"); include("cls_functions.php"); /////其他操作?>问题是当到了这个页面之后 session值为空,所以页面直接输出 PERMISSION DENIED.;而且到这个页面后SESSIONID都改变了呢,为什么呢????? 所有的程序都在域名lyric.qw.to下吗? 哦!!!不是呢,我的存储frame这个文件的域名是http://test.wap2008.com。不同域名呢,有办法解决吗??? php+smarty 不能播放flash 这段asp怎么写成php的 在弹出层中作页面自动跳转的问题 调试错误(PHP+MySQL)在线等 TIME_TO_SEC(NOW())-TIME_TO_SEC(time_at)查询没结果 求原因 PHP如何连接ORACLE并且取出数据 PHP类继承,有关构造函数 php中的socket只能传字符串吗?怎么传二进制数据呀? 一个php和javascript的综合问题,十万火急! php单点登录方案如何实现。 各位高手幫幫忙,我搞糊塗了 一个数组比较的问题
你的form在iframe里面?
post到哪里去了??
<frameset frameSpacing="0" border="false" frameborder=NO rows="91,*" noMargin marginHeight="0" marginWidth="0" id="frameMain">
<frame name="top" src="top.php" frameBorder="0" scrolling="no" noMargin marginHeight="0" marginWidth="0" noResize borderColor="#0a2689">
<frame name="main" src="http://lyric.qw.to/" frameBorder="0" scrolling="auto" noMargin marginHeight="0" marginWidth="0" noResize>
</frameset>
而 http://lyric.qw.to/ 打开后是个登入页面,代码如下:<HTML><HEAD><TITLE>Administrative Page</TITLE><link href="../style.css" rel="stylesheet" type="text/css"><script language="JavaScript">function chklogin(){ var e=document.frmLogin; if(e.username.value==""){ alert("请输入用户名。"); e.username.focus(); return false; }else if(e.password.value==""){ alert("请输入密码。"); e.password.focus(); return false; }}</script></HEAD><BODY><table border="0" cellspacing="1" cellpadding="2" width="250" bgcolor="#000000" align="center"> <form action="login.php" method="post" name="frmLogin" onSubmit="return chklogin();"> <tr class="title"> <td align="center" colspan="2">管理员登录</td> </tr> <tr class="body"> <td width="50" align="right">用户名:</td> <td><input type="text" name="username" class="blank"></td> </tr> <tr class="body"> <td width="50" align="right">密码:</td> <td><input type="password" name="password" class="blank"></td> </tr> <tr class="subtitle"> <td align="center" colspan="2"><input type="submit" value="提交" name="submit" class="blank"></td> </tr> </form></table><!--<a href="man_region.php">地区管理</a><br/>--><!--<a href="man_lyrics.php">歌词管理</a>--></BODY></HTML>
递交后的login.php 代码如下:
<?php session_start(); include("cls_dbfunctions.php"); include("cls_functions.php"); if(array_key_exists("username",$_POST)) $user=$_POST['username'];
else exit("PERMISSION DENIED.");
if(array_key_exists("password",$_POST)) $pwd=$_POST['password'];
else exit("PERMISSION DENIED."); $db=new DB_Functions(DB_SERVER,USERNAME,PASSWD);
$db->SelectDB(DB_NAME);
$sql="SELECT * FROM lyrics WHERE user='".$user."'";
$result=$db->QueryDB($sql);
while($row=$db->FetchRecord($result))
$passwd=$row['passwd'];
$db->FreeResult($result);
$db->CloseDB(); if($pwd==$passwd){
$_SESSION['user']=$user;
echo "<meta http-equiv=\"refresh\" content=\"0; url=man_lyrics.php\">"; }else{
$_SESSION['user']="";
exit("PERMISSION DENIED.");
}?>
上面这个url=man_lyrics.php 中的 man_lyrics.php代码如下:<?php
session_start();
if($_SESSION['user']=="") exit("PERMISSION DENIED.");
include("cls_dbfunctions.php");
include("cls_functions.php");
/////其他操作?>问题是当到了这个页面之后 session值为空,所以页面直接输出 PERMISSION DENIED.;而且到这个页面后SESSIONID都改变了呢,为什么呢?????