//1.php
<?
if ($_GET[action]=="login")
{
setcookie("username",$_POST[username],time()+3600*24);
setcookie("userpwd",$_POST[userpwd],time()+3600*24);
}
?>
<title>Cookie</title>
<FORM METHOD=POST ACTION="1.php?action=login">
<TABLE>
<TR>
<TD>Name:</TD>
<TD><INPUT TYPE="text" NAME="username" value=''><?=$_COOKIE[username]?></TD>
</TR>
<TR>
<TD>Pwd:</TD>
<TD><INPUT TYPE="text" NAME="userpwd" value=''><?=$_COOKIE[userpwd]?></TD>
</TR>
<TR>
<TD colspan=2><INPUT TYPE="submit"></TD>
</TR>
</TABLE>
</FORM>
//如上面的代码,我按了“提交”后,为什么蓝色部分显示的是上一次提交的值??

解决方案 »

  1.   

    COOKIE设置后在次页生效,Cookies 不会在设置它的本页生效
      

  2.   

    //1.php 
    <? 
    if ($_GET[action]=="login") 

    $u=$_POST[username];
    $p=$_POST[userpwd];
    setcookie("username",$u,time()+3600*24); 
    setcookie("userpwd",$p,time()+3600*24); 

    ?> 
    <title>Cookie </title> 
    <FORM METHOD=POST ACTION="1.php?action=login"> 
    <TABLE> 
    <TR> 
    <TD>Name: </TD> 
    <TD> <INPUT TYPE="text" NAME="username" value=''> <?=$_COOKIE[username]?> </TD> 
    </TR> 
    <TR> 
    <TD>Pwd: </TD> 
    <TD> <INPUT TYPE="text" NAME="userpwd" value=''> <?=$_COOKIE[userpwd]?> </TD> 
    </TR> 
    <TR> 
    <TD colspan=2> <INPUT TYPE="submit"> </TD> 
    </TR> 
    </TABLE> 
    </FORM> 
      

  3.   

    setcookie("username",$u,time()+3600*24,"/"); 设置个生效目录