首 页   · 站长博客 · 用户注册 · 会员登陆  · 会员排行  ·最新主题  ·最近回复  精华区  版权声明  ·论坛管理
  当前登录身份:游客,请先登录。  笔名: 口令: 验证码:   
楼 主  index »  PHP与模板与代码加密/优化 » [求助]请各位大虾帮帮忙  


  作者:slopesun
  注册时间:2004-09-07
  主题/回复:58/67
  积分:753
  等级:★★★(六级)
  称号:声名鹊起

  ken.wang@esolux...
  185627321
  www.

 

 发表:2004-09-10 03:26:48 阅读 2270 次 回复 2 次 得分1  |   字号 字色
[求助]请各位大虾帮帮忙
我刚开始学php,下载了一段代码(登陆)学习,有些东西看不懂啊.请大家帮帮忙.代码:
<?php

$customerid = $_POST["customerid"]; 
$password1 = $_POST["password1"];

if((!$customerid) || (!$password1)){ 
    echo "<script language=\"JavaScript\">alert(\"?????????!\");</script> "; 
    include 'login.html'; 
    exit(); 


$password1 = md5("$password1"); 
$host="localhost";
$database="hosting";
$dbusername="name";
$dbpassword="zhanghui";

$connect=mysql_pconnect($host,$dbusername,$dbpassword);
if(!$connect)
{
echo "<script language=\"JavaScript\">alert(\"???????\");</script>";
include 'reg.html';
exit();
};
mysql_select_db($database);
$sql = mysql_query("SELECT * FROM reg WHERE customerid ='$customerid' AND password1='$password1'"); 
$login_check = mysql_num_rows($sql); 
//echo "login_check $login_check";
if($login_check > 0){ 
    while($row = mysql_fetch_array($sql)){ 
    foreach( $row AS $key => $val ){ 
    $$key = stripslashes( $val ); 
   } 
    // Register some session variables! 
 

session_register('customerid'); 
     
    /*mysql_query("UPDATE reg SET login=now() WHERE customerid='$customerid'"); */
/*  include 'index.html'; */
    $url= "location: ../index0.php";
    header($url); }
    } 
 else 

  echo "<script language=\"JavaScript\">alert(\"请确认你的用户名和密码是否正确!\");</script>"; 
    include 'login.html'; 
exit();

    
?>

从if($login_check > 0){   
就看不懂了.


 
 1#楼  
 
  回复人:一起PHP
  注册时间:2004-02-27
  主题/回复:247/1521
  积分:4649
  等级:★★★★★☆(十一级)
  称号:论坛圣人

   
 1#楼 发表于2004-09-10 19:19:35  评分:1 

从if($login_check > 0){  往后,是先做了一个判断,判断输入的用户名和密码是否存在,如果存在(查询结果数>0),那么遍历整个数组(使用FOREACH语句),把数组元素全部用stripslashes()函数去掉默认的转义.具体说,是对数组中的元素作了一定处理.
然后注册了一个SESSION.用来标记用户已经登陆了.然后转到index0.php.
如果用户不存在,则返回到登陆页面.


 2#楼  
 
  回复人:slopesun
  注册时间:2004-09-07
  主题/回复:58/67
  积分:753
  等级:★★★(六级)
  称号:声名鹊起

   
 2#楼 发表于2004-09-14 03:00:19  评分:× 

谢谢站长!
不过,我对
if($login_check > 0){ 
    while($row = mysql_fetch_array($sql)){ 
    foreach( $row AS $key => $val ){ 
    $$key = stripslashes( $val ); 
   } 
还只是知道大意.
查了一下stripslashes()函数.说的是:
本函数可去掉字符串中的反斜线字符。若是连续二个反斜线,则去掉一个,留下一个。若只有一个反斜线,就直接去掉。
不怎么理解?!!
  页数1/1首页 « 1 » 末页
  发表回复:您还没有登陆,无法发表回复。请先[登陆]

一起PHP技术联盟 主办:一起PHP 联系方式:站长QQ:4304410 QQ群:8423742 20159565 站长博客 E-mail: nqp@nqp.me 执行时间:0.01sec
SimsmaBBS 2008 (v6.0) Developed by 17php.com,Copyright(C)2003-2010 All rights reserved. 副本授权:一起PHP官方专用版