Board logo

标题: 十天学会php之第七天 [打印本页]

作者: admin    时间: 2008-3-26 16:40     标题: 十天学会php之第七天


  H% W' K/ y# @9 ~6 E; B学习目的:学会SESSION的使用
0 V; v! m  W  V& J# a) Y
, d) n% z2 g/ `9 mSESSION的作用很多,最多用的就是站点内页面间变量传递。在页面开始我们要session_start();开启SESSION
# j$ |& V1 ?2 a6 s然后就可以使用SESSION变量了,比如说要赋值就是:$_SESSION['item']="item1";要得到值就是$item1=$_SESSION['item'];,很简单吧。这里我们可能会使用到一些函数,比如说判断是不是某SESSION变量为空,可以这么写:empty($_SESSION['inum'])返回true or false8 M* o* Q! A4 l6 {. Q# H  m& L1 _( r
下面综合一下前面所说的我们来看一个登陆程序,判断用户名密码是否正确。
& c+ K' s5 s0 O, p+ X1 A登陆表单是这样:login.php2 p2 ^: \' t; _% z/ W4 `' d
<table width="100%" height="100%" border="0" align="center" cellpadding="0" cellspacing="0">
- r* `9 @' c  j* W0 u<tr>& K8 `3 A( y5 u/ z& s. j7 ]
<form action="checklogin.php" method="post"><td align="center" valign="middle"><table width="400" border="0" cellpadding="5" cellspacing="1" class="tablebg">$ z# H: Q4 n+ [8 w. t
<tr class="tdbg">" z4 R5 N6 A; h6 F' I
<td colspan="2"><div align="center">Administrators Login</div></td>
3 f& W" b5 R& S  S</tr>
  T" j) A# q; B8 l8 h( H<tr class="tdbg">1 q1 ~; s$ c/ X6 B. K
<td><div align="center">Username</div></td>
. K7 ^3 g7 h4 A1 r; {<td><div align="center">
& W8 O0 a+ B1 M6 S* @% l<input name="username" type="text" id="username">
) H$ B& V0 m7 B</div></td>4 S6 a# ~6 v% ]: [) B
</tr>
; o8 H) W% E& ^5 O  c<tr class="tdbg">
: O6 m0 ?, Y* {) l# ?# X5 U<td><div align="center">Password</div></td>2 I  b' A1 N! M% d4 b- T/ X
<td><div align="center">
. b9 Y  W3 w+ A  u9 o! V3 N<input name="password" type="password" id="password">
8 n8 t* z- |) T; P$ a</div></td>
) i% j. I2 F! J' n</tr>( c2 Y; }# S7 y$ N8 q2 {; x! F
<tr class="tdbg">
+ D# @) I# u3 `1 E6 a. l<td colspan="2"><div align="center">
# k0 c% k; f3 c8 C3 }<input type="submit" name="Submit" value="Submit">
, i0 o! v0 y' p5 G& e6 ^4 V9 O<input type="reset" name="Submit2" value="Clear">
' K% s) a6 z* F. B+ Z& Z</div></td>
: _& d( J) z3 m- L</tr>/ X: d( |" ^# G/ w. B1 t
</table></td></form>
+ y3 |+ b# v# a' X& F</tr>' a! [& C" T! r/ z. D& Y8 }
</table>& ?* x4 |" e5 M
% p! v' d8 \- ^9 S$ C% F' W3 N# ]
处理文件是这样

& B3 q; b- a, M3 P: P8 {<?
3 j, Q% x: a, D% A0 a. grequire_once('conn.php');
9 I6 R7 v5 i. C+ H& z8 {session_start();
/ w/ Q, V) W' h" H/ D5 P* g$username=$_POST['username'];  [: y: Z1 Q# N+ y% }2 \
$password=$_POST['password'];3 o" t) D$ T4 ~7 t% P; P( o
$exec="select * from admin where username='".$username."'";2 W. R# z' x1 n8 j9 ^  t: `
if($result=mysql_query($exec))
2 _$ x8 V# I6 p, p- ~- I{
1 o3 V. M. Y' ^. a: o9 J7 ]# Jif($rs=mysql_fetch_object($result)), G4 z/ B: V' R( G
{
* M* Z9 {+ G$ u8 G1 Y) [1 ^) _if($rs->password==$password)
3 A& A) @3 F. k- g, L$ \{9 Q  [# s6 V' @! |" ^8 @
$_SESSION['adminname']=$username;
2 w3 n2 i( C5 |! ?5 x- f/ Uheader("location:index.php");
0 v& V4 F8 Z2 \}' ?9 R, ?  h- D2 q0 K1 Y
else+ J' D5 D" D! m5 o  V- b
{3 E6 T: F& L4 E: v
echo "<script>alert('Password Check Error!');location.href='login.php';</script>";
- o; s4 d- ^  W' N* a7 Q}' q$ z, ]0 N* `* a) [) I
}
* Q- Q7 m1 F% [' p9 Eelse8 F& {, j& B; X6 F6 W( L6 A! @: Z; |8 w0 Y
{1 G  j5 K% H. J  i  D4 O6 E8 T
echo "<script>alert('Username Check Error!');location.href='login.php';</script>";
; s1 s+ w" t+ \. G1 ^}) l' f: Z7 h; V) j) Q: ]
}
$ E. ?6 h# m& W" celse2 a4 y( w5 t, J. I. J' G
{* c3 F2 ^/ R$ q2 M% K
echo "<script>alert('Database Connection Error!');location.href='login.php';</script>";+ o3 z; N  N1 X) J: X6 G- p
}
  o, e  C+ E& K) x* ~" A! v% F  N2 D% I: @
?>* F( e% u' y) g4 H- Q6 h; k

" G, ]) u2 D9 yconn.php
是这样:8 y: O! J. z; l) k& B
<?
' N# i: w; Y0 U3 J( q$conn=mysql_connect ("127.0.0.1", "", "");
4 D  f( r' x8 `9 y, U2 R9 b3 k+ umysql_select_db("shop"); ! ^/ d, I, U( t; q5 w. C. r
?> * n# P0 `5 q1 n1 G9 s; y8 `* M+ g/ w% n
" x& e* ~, T# M- L  |; @- C1 L
由于 $_SESSION['adminname']=$username;我们可以这样写验证是否登陆语句的文件:checkadmin.asp
# r$ N" T7 K7 O3 \<?  s, z9 G/ R5 ~; M3 ?7 Z5 X
session_start();
3 o! T! Z# F! r, W, [if($_SESSION['adminname']==''): E+ j& d7 t% i  d5 m( B
{
4 N7 L+ x/ `+ O/ jecho "<script>alert('Please Login First');location.href='login.php';</script>";
1 V0 M+ Y& F! @8 v6 W, u, S; `$ B" V2 F}
1 n+ W$ U* t. }$ C?> + Q7 D" |. h. e5 Q! C% b
十天学会php之第七天就说到这里,第八天说一下怎么弄一个分页。





欢迎光临 捌玖网络工作室 (http://89w.org/) Powered by Discuz! 7.2