<frame>里的内容属于另一个网页,SESSION不能跨FRAME传递

解决方案 »

  1.   

    啊?那我要放在<frame>里面,会有办法解决吗?
      

  2.   

    ding :(没有高手帮忙吗????
      

  3.   

    说的详细一点
    你的form在iframe里面?
    post到哪里去了??
      

  4.   

    以下 是我的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都改变了呢,为什么呢?????
      

  5.   

    所有的程序都在域名lyric.qw.to下吗?
      

  6.   

    哦!!!不是呢,我的存储frame这个文件的域名是http://test.wap2008.com。不同域名呢,有办法解决吗???