PHP中使session可以跨窗口运行的方法

result.php文件:

下面综合一下前面所说的我们来看一个登陆程序,判断用户名密码是否正确。
登陆表单是这样:login.php table width=”100%” height=”100%” border=”0″
align=”center” cellpadding=”0″ cellspacing=”0″ tr form
action=”checklogin.php” method=”post”td align=”center”
valign=”middle”table width=”400″ border=”0″ cellpadding=”5″
cellspacing=”1″ tr td colspan=”2″div align=”center”Administrators
Login/div/td /tr tr tddiv align=”center”Username/div/td tddiv
align=”center” input name=”username” type=”text” /div/td /tr tr tddiv
align=”center”Password/div/td tddiv align=”center” input name=”password”
type=”password” /div/td /tr tr td colspan=”2″div align=”center” input
type=”submit” name=”Submit” value=”Submit” input type=”reset”
name=”Submit2″ value=”Clear” /div/td /tr /table/td/form /tr /table

这本来是session的基本用法,但在php中就不灵了。不过我们可以把session变量注册成跨窗口的全局变量。但这有一个条件,就是要向需要使用该session变量的窗口发送变量名为session_name(),值为session_id()的变量,用表单或者在url后面用?带上都可以.并且在使用session变量的页面的一开始处调用session_start()。

database.php文件:

conn.php是这样: ? $conn=mysql_connect (“127.0.0.1”, “”, “”);
mysql_select_db(“shop”); ?

htmlheadmeta;charset=utf-8/title结果画面/title/headbodyformmethod=postEmail:?php@session_start();$conn=mssql_澳门新葡萄京官网首页,pconnect(”localhost”,”sa”,”sa”);mssql_select_db(”netstore”);$query=mssql_query(”select*fromCUSTOMER”,$conn);$name=mssql_result($query,0,”email”);echo$name;?br/br/ahref=result.php?.session_name().=.session_id().返回/a/form/body/html

由于
$_SESSION[adminname]=$username;我们可以这样写验证是否登陆语句的文件:checkadmin.asp
? session_start(); if($_SESSION[adminname]==) { echo
“scriptalert(Please Login First);location.href=login.php;/script”; } ?

例子如下:

SESSION的作用很多,最多用的就是站点内页面间变量传递。在页面开始我们要session_start();开启SESSION;
然后就可以使用SESSION变量了,比如说要赋值就是:$_SESSION[item]=”item1″;要得到值就是$item1=$_SESSION[item];,很简单吧。这里我们可能会使用到一些函数,比如说判断是不是某SESSION变量为空,可以这么写:empty($_SESSION[inum])返回true
or false。

htmlheadmeta;charset=utf-8/title登陆画面/title/headbodyformaction=result.phpmethod=posttablewidth=100%border=0trtdalign=centervalign=middlep测试系统—–登陆画面/ptablewidth=250style=border-collapse:collapse;border-color:#000000border=1cellpadding=2cellspacing=2trtdwidth=30%用户:/tdtdinputname=usernametype=textstyle=width:150px//td/trtrtd密码:/tdtdinputname=passwordtype=passwordstyle=width:150px//td/trtrtdcolspan=2align=centerinputtype=submitvalue=登陆//td/tr/table/td/tr/table/form/body/html

学习目的:学会SESSION的使用

htmlheadmeta;charset=utf-8/title结果画面/title/headbodyformmethod=post欢迎你,?php@session_start();if(isset($_POST[username])){$username=htmlspecialchars($_POST[username]);$_SESSION[”username”]=$username;}else{$username=$_SESSION[”username”];}echo$username;?br/br/ahref=login.php返回/aahref=database.php?.session_name().=.session_id().数据库测试/a/form/body/html

呵呵,今天说到这里,明天说一下怎么弄一个分页。

login.php文件:

处理文件是这样 ? require_once(conn.php); session_start();
$username=$_POST[username]; $password=$_POST[password];
$exec=”select * from admin where username=”.$username.””;
if($result=mysql_query($exec)) { if($rs=mysql_fetch_object($result))
{ if($rs-password==$password) { $_SESSION[adminname]=$username;
header(“location:index.php”); } else { echo “scriptalert(Password Check
Error!);location.href=login.php;/script”; } } else { echo
“scriptalert(Username Check Error!);location.href=login.php;/script”; }
} else { echo “scriptalert(Database Connection
Error!);location.href=login.php;/script”; }

发表评论

电子邮件地址不会被公开。 必填项已用*标注