|登录 |注册

查看: 1605|回复: 3
打印 上一主题 下一主题

[解决]PHP的问题

[复制链接]
小开心
2009-9-10 11:10 AM
我想写个改password function的coding
可是遇到了一些问题
希望大大指点迷经
        if(($newPassword == "") || ($confirmPassword == "") || ($currentPassword == ""))
        {
                echo "<script language='javascript'>alert('Please fill in the password')</script>";
        }
        else if ($password != $currentPassword)
        {
                echo "<script language='javascript'>alert('You have enter wrong current password.')</script>";
        }
        else if($newPassword != $confirmPassword)
        {
                echo "<script language='javascript'>alert('Please fill in the same password')</script>";
        }
        else  if((ereg("^([a-zA-Z0-9])+",$newPassword))&& (ereg("^([a-zA-Z0-9])+",$confirmPassword))&& (ereg("^([a-zA-Z0-9])+",$currentPassword))){
                $result3=mysql_query("UPDATE login SET Password='$confirmPassword' WHERE Username = '$Username'");
        //        echo "<script languege='javascript'>alert('Success Change')</script>";
                echo "<script> window.location='password.php?Action=submit&Username=$Username'</script>";
        }
        else
        {
                echo "<script language='javascript'>alert('Please follow password format!!')</script>";
        }


这样写出来后,遇到了写问题
如果我password里放;'[] 后再放字母/号码
他就会显示密码出错
但如果我方字母/号码加上;'., 这些符号
密码就不会显示出错
希望可以帮帮忙

[ 本帖最后由 小开心 于 2009-9-11 12:05 PM 编辑 ]

回复 #1 小开心 的帖子

goodhermit95
2009-9-10 11:56 AM
我觉得是你regular expression格式问题……我觉得而已哦!
Super-Tomato
2009-9-10 04:42 PM
原帖由 小开心 于 2009-9-10 11:10 AM 发表
我想写个改password function的coding
可是遇到了一些问题
希望大大指点迷经


这样写出来后,遇到了写问题
如果我password里放;'[] 后再放字母/号码
他就会显示密码出错
但如果我方字母/号码加上;'.,  ...



你的 regular expression 只是判斷字串中是否有 a-zA-Z0-9 為開頭, 如果你輸入 abc123;[] 的話, reg 函數就會搜索到 abc123 和 ;[] 既然一開始的條件存在, 那麼就當然會回傳 1


p/s: 請看看 RE 中的 ^ 和 $ 怎麼使用你就可以修改正確了

[ 本帖最后由 Super-Tomato 于 2009-9-10 04:46 PM 编辑 ]
小开心
2009-9-11 12:07 PM
原帖由 goodhermit95 于 2009-9-10 11:56 AM 发表
我觉得是你regular expression格式问题……我觉得而已哦!

原帖由 Super-Tomato 于 2009-9-10 04:42 PM 发表



你的 regular expression 只是判斷字串中是否有 a-zA-Z0-9 為開頭, 如果你輸入 abc123;[] 的話, reg 函數就會搜索到 abc123 和 ;[] 既然一開始的條件存在, 那麼就當然會回傳 1


p/s: 請看看 RE 中的  ...

谢谢tomato
找出问题来了
也让我上了一课

也谢谢hermit
让我在google又学了一些东西em0012
您需要登录后才可以回帖 登录 | 注册

JBTALKS.CC |联系我们 |隐私政策 |Share

GMT+8, 2026-1-2 02:12 AM , Processed in 0.088606 second(s), 24 queries .

Powered by Discuz! X2.5 © 2001-2012 Comsenz Inc.

本论坛言论纯属发表者个人意见,与本论坛立场无关
Copyright © 2003-2012 JBTALKS.CC All Rights Reserved

Dedicated Server powered by iCore Technology Sdn. Bhd.

合作联盟网站:
JBTALKS 马来西亚中文论坛 | JBTALKS我的空间 | ICORE TECHNOLOGY SDN. BHD.
回顶部