/*
我设置登录名和密码和会话变量,如...如果他们不从被保存到下一个页面,一个会话状态变量对大家都没好处,将它..因为它会返回“假“并重定向到登录页面?
*/
代码如下 | 复制代码 |
ob_clean(); ob_start(); //////////// 设置 Cookie 目录 if (isset($_SERVER['HTTP_HOST'])) { if(strpos($_SERVER['HTTP_HOST'], ':') != -1){ $domain = substr($_SERVER['HTTP_HOST'], 0, strpos($_SERVER['HTTP_HOST'], ':')); } 否则{ $domain = $_SERVER['HTTP_HOST']; } $domain = preg_replace('`^www.`', '', $domain); // 根据 RFC 2109,cookie 域必须至少包含一个除 之外的点 // 第一的。对于“localhost”等主机,我们不设置 cookie 域。 if (count(explode('.', $domain)) > 2) { ini_set('session.cookie_domain', $domain); } } //////////// 结束设置 Cookie 目录 //开始会话 会话开始(); //包含数据库连接详细信息 require_once('config.php'); /////////////错误报告。 。 。上线时发表评论! ///////////////////////////////// //echo ini_get('display_errors'); //if (!ini_get('display_errors')) { // ini_set('display_errors', 1); //} //echo ini_get('display_errors'); ///////////// 错误报告结束 /////////////////////////////////// //用于标头重定向的域名信息 $host = $_SERVER['HTTP_HOST']; $uri = rtrim(dirname($_SERVER['PHP_SELF']), '/'); //存储验证错误的数组 $errmsg_arr = 数组(); //验证错误标志 $错误标志=假; //连接到mysql教程服务器 $link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD); if(!$link) { die('无法连接到服务器:'.mysql_error()); } //选择数据库 $db = mysql_select_db(DB_DATABASE); if(!$db) { die("无法选择数据库"); } //清理从表单接收的值的函数。防止 SQL 注入 函数 clean($str) { $str = @trim($str); if(get_magic_quotes_gpc()) { $str = 条教程睫毛($str); } 返回 mysql_real_escape_string($str); } //清理 POST 值 $login = clean($_POST['login']); $password = clean($_POST['密码']); //输入验证 if($login == '') { $errmsg_arr[] = '登录ID丢失'; $错误标志=真; } if($password == '') { $errmsg_arr[] = '密码丢失'; $错误标志=真; } //如果有输入验证,则重定向回登录表单 if($errflag) { $_SESSION['ERRMSG_ARR'] = $errmsg_arr; session_write_close(); echo ""; //$extra1 = '登录表单.php'; // header("位置:http://$host$uri/$extra1"); 出口; } //创建查询 $qry="SELECT * FROM 成员 WHERE login='$login' AND passwd='".md5($password)."'"; $结果=mysql_query($qry); //检查查询是否成功 if($结果) { if(mysql_num_rows($结果) == 1) { //登录成功 ////////////////////////////////////////////// 出现此行导致 IE7 出现一些问题!!!!!!! ////////////////////////////////////////// // session_regenerate_id (TRUE); ////////////////////////////////////////////// 出现此行导致 IE7 出现一些问题!!!!!!! ////////////////////////////////////////// $member = mysql_fetch_assoc($result); $_SESSION['SESS_MEMBER_ID'] = $member['member_id']; $_SESSION['SESS_FIRST_NAME'] = $member['firstname']; $_SESSION['SESS_LAST_NAME'] = $member['lastname']; $_SESSION['SESS_ADDRESS'] = $member['地址']; $_SESSION['SESS_CITY'] = $member['city']; $_SESSION['SESS_STATE'] = $member['state']; $_SESSION['SESS_LOGIN'] = $member['login']; $_SESSION['SESS_CAPTAIN'] = $member['队长']; $_SESSION['SESS_TEAM'] = $member['team_name']; $_SESSION['SESS_MANUAL_TEAM'] = $member['manual_team']; session_write_close(); //echo ""; $extra2 = 'member-index.php'; 标头(“位置:http://$host$uri/$extra2”); 出口; }否则{ //登录失败 //echo ""; $extra3 = '登录失败.php'; 标头(“位置:http://$host$uri/$extra3”); 出口; } }否则{ die("查询失败"); } |
// 方法二
代码如下 | 复制代码 |
if (isset($_SERVER['HTTP_HOST'])) { if(strpos($_SERVER['HTTP_HOST'], ':') != -1){ $domain = substr($_SERVER['HTTP_HOST'], 0, strpos($_SERVER['HTTP_HOST'], ':')); } else{ $domain = $_SERVER['HTTP_HOST']; } $domain = preg_replace('`^www.`', '', $domain); // Per RFC 2109, cookie domains must contain at least one dot other than the // first. For hosts such as 'localhost', we don't set a cookie domain. if (count(explode('.', $domain)) > 2) { ini_set('session.cookie_domain', $domain); } } |