基于FLASH和WEB3D后台数据库电子商务系统设计 第8页
$msg .= "<li>填写密码与确认密码不符。";
} elseif (empty($frm["truename"])) {
$errors->truename = true;
$msg .= "<li>你没有填写真实姓名。";
} elseif (empty($frm["certificate"])) {
$errors->certificate = true;
$msg .= "<li>你没有填写证件号码。";
} elseif (empty($frm["zipcode"])) {
$errors->zipcode = true;
$msg .= "<li>你没有填写邮政编码。";
} elseif (empty($frm["email"])) {
$errors->email = true;
$msg .= "<li>你没有填写电子邮箱。";
} elseif (email_exists($frm["email"])) {
$errors->email = true;
$msg .= "<li>邮件地址<b>" . ov($frm["email"]) ."</b> 已经存在,请使用别的邮箱进行注册";
} elseif (empty($frm["phone"])) {
$errors->phone = true;
$msg .= "<li>你没有填写电话号码。";
} elseif (empty($frm["address"])) {
$errors->address = true;
$msg .= "<li>你没有填写地址。";
}
return $msg;
}
2.如果validate_form()函数返回空值,说明客户输入没有错误,系统调用insert_user()函数把客户的个人资料和用PHP的md5()加密函数处理过的密码插入Users表中,并输出成功注册信息。insert_user()函数代码如下:
function insert_user(&$frm) {
$qid = db_query("
INSERT INTO users (
username, password,truename, certificate, email, phone, address
) VALUES (
'$frm[username]'
,'" . md5($frm["password1"]) ."'
,'$frm[truename]'
,'$frm[certificate]'
,'$frm[email]'
,'$frm[phone]'
,'$frm[address]'
)");
}
3.PHP与Flash数据通信问题说明
PHP与Flash数据通信主要分两部分:
(1)在Flash端使用Flash的LoadVariables语句实现接收外部PHP脚本文件返回的数据,或把Flash的内部数据传送给外部的PHP脚本文件。具体语句格式为:loadVariables ("PHP文件", this, "post");
如:loadVariables ("signup.php", this, "post");就是把当前Flash里的数据传送给signup.php文件。
用onclipevent(data)事件来判断Flash是否接收到PHP脚本返回的数据,作下一步的处理。
(2)在PHP端把处理后的数据传送给Flash,使用Print或echo输出语句,但输出的格式必需为:&Flash端的接收变量名=输出值。如要让Flash端的msg文本域接收PHP的输出值,具体输出语句为print “&msg=注册成功”;
5.1.2会员登录功能模块
客户注册登记后,便可以使用用户名和密码进行登录,系统调用verify_login()函数根据客户输入的用户名和密码与Users表中的用户名和密码进行比较,如果相同则把用户名和客户的远程地址赋值给User和IP两个Session变量,并输出成功登录信息。
图5-3会员登录功能模块流程图
用户名和密码验证函数代码如下:
……
$user = verify_login($HTTP_POST_VARS["username"], $HTTP_POST_VARS["password"]);
if ($user) {
$SESSION["user"] = $user;
$SESSION["ip"] = $REMOTE_ADDR;
print "&locate=msg";
print "&login_msg=成功登录";
die;
}
function verify_login($username, $password) {
$qid = db_query("
SELECT username, truename, email, priv
FROM users
WHERE username = '$username' AND password = '" . md5($password) . "'
");
return db_fetch_array($qid);
}
……
5.1.3会员密码修改功能模块
客户进入密码修改页面前系统首先调用require_login()函数要求客户登录,如果客户已经登录则进入密码修改页面。在用户输入修改密码后系统调用validate_form()函数进行合法性检查,如果没有错误则调用update_password()函数对客户的登录密码进行更新。 主要功能函数代码如下:
/* is_logged_in()判断客户是否已经登录*/
function is_logged_in() {
global $SESSION, $REMOTE_ADDR;
return isset($SESSION)
&& isset($SESSION["user"])
&& isset($SESSION["ip"])
&& $SESSION["ip"] == $REMOTE_ADDR;
}
function require_login() {
global $CFG, $SESSION;
if (! is_logged_in()) {
$SESSION["wantsurl"] = qualified_me();
print "&locate=login";
print "&login_msg=请先登录";
return 0;
}
return 1;}
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>
基于FLASH和WEB3D后台数据库电子商务系统设计 第8页下载如图片无法显示或论文不完整,请联系qq752018766