使用rewrite 来配置 apache二级域名
ServerName www.111cn.net
ServerAlias *.111cn.net 111cn.net
RewriteEngine on
RewriteCond %{HTTP_HOST} ^((?!www)w)+.111cn.net$
RewriteRule ^/?$ /domainAction.action?subDomain=%0 [L,PT]
<?
/*存放贴子的表结构------------------------------------------------------
代码如下 | 复制代码 |
create table bbsrow( bbsrow_id int(6) not null auto_increment, //贴子ID号 bbsrow_auth varchar(20) not null, //贴子作者 bbsrow_parentid int(6), //贴子的父亲贴子ID号,如为首发贴则为空 bbsrow_title varchar(200) not null, //贴子标题 bbsrow_returncount int(3), //贴子的回复贴数,如果没有回贴则为空 primary key (bbsrow_id) |
);
-----------------------------------------------------------------------------*/
//显示儿子贴的递归函数--------------------------------------------------
代码如下 | 复制代码 |
function showchildren($parent_id){ global $connect_id; $query="select * from bbsrow where bbsrow_parentid='" . $parent_id . "'"; $result_top=mysql_query($query,$connect_id); echo "<ul> "; while($myrow_child=mysql_fetch_row($result_top)){ echo "<li>"; echo $myrow_child[0]; echo $myrow_child[1]; echo $myrow_child[2]; echo $myrow_child[3]; echo $myrow_child[4] . " "; //如果回复贴数不为空,则表示有儿子贴,继续显示儿子贴 if($myrow_child[4]!=''){ showchildren($myrow_child[0]); } } echo "</ul>"; } |
//----------------------------------------------------------------------
//连接数据库并将所有首发贴放到$mainrow数组里----------------------------
代码如下 | 复制代码 |
$connect_id=mysql_connect("localhost","test","test") or die("无法连接数据库"); $i=0; //开始构建分页显示------------------------------------------------------ if($currentpage!=""){ $pagesize=10;//每页显示的首发贴数!
if($page>0) $pagestr="<a href=bbsrow.php4?currentpage=" . ($page-1) . ">上一页</a>"; for($i=0;$i<$totalpage;$i++){ $pagestr=$pagestr . "页]"; if($page<$totalpage-1) $pagestr=$pagestr . "<a href=bbsrow.php4?currentpage=" . ($page+1) .">下一页</a><p> "; echo $pagestr; |
//----------------------------------------------------------------------
//开始分级显示----------------------------------------------------------
代码如下 | 复制代码 |
echo "<ul> "; for($i=$start;$i<$end;$i++){ echo "<li> "; echo $mainrow[$i][0]; echo $mainrow[$i][1]; echo $mainrow[$i][2]; echo $mainrow[$i][3]; echo $mainrow[$i][4] . " "; //如果回复贴数不为空,则表示有儿子贴,继续显示儿子贴 if($mainrow[$i][4]!=''){ showchildren($mainrow[$i][0]); } } echo "</ul> "; |
//----------------------------------------------------------------------?>
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
</head>
<body>
<?php
$_POST['username'] = $username;
$_POST['admin'] = $admin;
$_POST['gender'] = $gender;
$_POST['address'] = $address;
$_POST['hometel'] = $hometel;
$_POST['hp'] = $hp;
$_POST['email'] = $email;
$_POST['course'] = $course;
$_POST['year'] = $year;
$_POST['path'] = $path;
$_POST['title'] = $title;
$_POST['supervisor'] = $supervisor;
echo "Data has been submitted";
function Enter_New_Entry($username,$admin,$gender,$address,$phone,$hp,$email,$cou rse,$year,$path,$title,$supervisor) {
if(!$cnx = odbc_connect( 'FYP' , 'root', '' ))die("error with connection");
$SQL_Exec_String = "Insert Into rank (username,admin,gender,address,hometel,hp,email,course,year,path,title,s upervisor)
Values ('$username','$admin','$gender','$address','$phone','$hp','$email','$cou rse','$year','$path','$title','$supervisor')";
$cur= odbc_exec( $cnx, $SQL_Exec_String );
if (!$cur) {
Error_handler( "Error in odbc_exec( no cursor returned ) " , $cnx );
}
odbc_close( $cnx);
}
Enter_New_Entry($username,$admin);
?>
</body>
</html>
/*
我设置登录名和密码和会话变量,如...如果他们不从被保存到下一个页面,一个会话状态变量对大家都没好处,将它..因为它会返回“假“并重定向到登录页面?
*/
代码如下 | 复制代码 |
ob_clean(); ob_start(); //////////// SET COOKIE DIRECTORY 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); } } //////////// END SET COOKIE DIRECTORY //Start session session_start(); //Include database connection details require_once('config.php'); /////////////ERROR REPORTING . . . COMMENT OUT WHEN GOING LIVE! ///////////////////////////////// //echo ini_get('display_errors'); //if (!ini_get('display_errors')) { // ini_set('display_errors', 1); //} //echo ini_get('display_errors'); ///////////// END OF ERROR REPORTING ///////////////////////////////// //Domain Info used to header redirects $host = $_SERVER['HTTP_HOST']; $uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\'); //Array to store validation errors $errmsg_arr = array(); //Validation error flag $errflag = false; //Connect to mysql教程 server $link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD); if(!$link) { die('Failed to connect to server: ' . mysql_error()); } //Select database $db = mysql_select_db(DB_DATABASE); if(!$db) { die("Unable to select database"); } //Function to sanitize values received from the form. Prevents SQL injection function clean($str) { $str = @trim($str); if(get_magic_quotes_gpc()) { $str = strips教程lashes($str); } return mysql_real_escape_string($str); } //Sanitize the POST values $login = clean($_POST['login']); $password = clean($_POST['password']); //Input Validations if($login == '') { $errmsg_arr[] = 'Login ID missing'; $errflag = true; } if($password == '') { $errmsg_arr[] = 'Password missing'; $errflag = true; } //If there are input validations, redirect back to the login form if($errflag) { $_SESSION['ERRMSG_ARR'] = $errmsg_arr; session_write_close(); echo "<meta http-equiv=Refresh content=1;url='login-form.php'>"; //$extra1 = 'login-form.php'; //header("Location: http://$host$uri/$extra1"); exit; } //Create query $qry="SELECT * FROM members WHERE login='$login' AND passwd='".md5($password)."'"; $result=mysql_query($qry); //Check whether the query was successful or not if($result) { if(mysql_num_rows($result) == 1) { //Login Successful /////////////////////////////////////////////// THIS LINE APPEARS TO CAUSE IE7 SOME PROBLEMS!!!!!!! ////////////////////////////////////////// // session_regenerate_id (TRUE); /////////////////////////////////////////////// THIS LINE APPEARS TO CAUSE IE7 SOME PROBLEMS!!!!!!! ////////////////////////////////////////// $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['address']; $_SESSION['SESS_CITY'] = $member['city']; $_SESSION['SESS_STATE'] = $member['state']; $_SESSION['SESS_LOGIN'] = $member['login']; $_SESSION['SESS_CAPTAIN'] = $member['captain']; $_SESSION['SESS_TEAM'] = $member['team_name']; $_SESSION['SESS_MANUAL_TEAM'] = $member['manual_team']; session_write_close(); //echo "<meta http-equiv=Refresh content=1;url='member-index.php'>"; $extra2 = 'member-index.php'; header("Location: http://$host$uri/$extra2"); exit; }else { //Login failed //echo "<meta http-equiv=Refresh content=1;url='login-failed.php'>"; $extra3 = 'login-failed.php'; header("Location: http://$host$uri/$extra3"); exit; } }else { die("Query failed"); } |
//方法二
代码如下 | 复制代码 |
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); } } |
代码如下 | 复制代码 |
$str = '1-8732dsef83dfrese8732DEef83dfrESe'; |
//有朋友这样写的
代码如下 | 复制代码 |
var_dump(preg_match('/[0-9]+-[a-zA-Z0-9]{32}/',$str)); |
//可能存在的问题
代码如下 | 复制代码 |
$str= 'www1-8732dsef83dfrese8fdsfds3dfrESe-wfds111cn.netee'; $str = 'wwwfsdgwww.111cn.netwww1-873dfsfds32DEef83dfrESe-weeee'; //这两种形式的都会认为是匹配的。 //所以你应该修改成 var_dump(preg_match('/^[0-9]+-[a-zA-Z0-9]{32}$/',$str)); |
//正确的方法是
代码如下 | 复制代码 |
var_dump(preg_match('/^[0-9]+-[a-zA-Z0-9]{32}$/',$str)); |
//看看其它的方法 正则表达式(汉字,字母,数字 混合验证)
/*
首位汉字,
2-4位为字母,
第5位汉字,
6-14位为数字,
最后一位为汉字
*/
代码如下 | 复制代码 |
[u4e00-u9fa5]{1}[a-za-z]{2,4}[u4e00-u9fa5]{5}[0-9]{6,14}[u4e00-u9fa5]{1} ^[u4e00-u9fa5uf900-ufa2d][a-za-z]{3}[u4e00-u9fa5uf900-ufa2d]d{9}[u4e00-u9fa5uf900-ufa2d]$ |
相关文章
详解nginx同一端口监听多个域名和同时监听http与https
这篇文章主要介绍了详解nginx同一端口监听多个域名和同时监听http与https的相关资料,需要的朋友可以参考下...2017-07-06从PHP $_SERVER相关参数判断是否支持Rewrite模块
如果是http://www.jb51.net/p1141.html形式的URL,可通过$_SERVER['REQUEST_URI']和$_SERVER['QUERY_STRING']值的区别来分析,最主要是如果页面是通过重定向会产生$_SERVER['REDIRECT_QUERY_STRING']和$_SERVER['REDIREC...2013-10-04- PHP IP地址格式检测函数复制代码 代码如下:function checkIp($ip){ $ip = str_replace(" ", "", $ip); $ip = strtolower($ip); $ip= str_replace("http://", "", $ip); $ip= str_replace("https://", ""...2013-10-04
- 这篇文章主要介绍了C#域名解析简单实现方法,可实现针对域名解析显示出主机名、IP地址、别名等功能,需要的朋友可以参考下...2020-06-25
2015新版godaddy域名续费与过期域名赎回期限及赎回方法
有许多的新手朋友不知道gd如何续费及过期了域名如何购买回来了,今天我们就一起来看看2015新版godaddy域名续费与过期域名赎回期限及赎回方法吧。 2015新版godaddy...2016-10-10- 今天给域名续费的,实在找不到可以便宜的优惠码了,就干脆直接转到万网好了!!39¥比之前使用了优惠码的50多还便宜不少! 申请转出之前请大家务必注意两点问题: 1、之前购买...2016-10-10
- godaddy域名转出西部数码要如何转呢,因为许多新顶级域名在国内许多服务商不支持,特别是高价域名更不支持了,下面我们来看godaddy域名转出西部数码的方法吧. 1、域...2016-10-10
- 这篇文章主要介绍了Nginx批量添加二级子域名完美方案,本文讲解使用正则表达式批量匹配指定域名的二级域名虚拟主机,需要的朋友可以参考下...2016-01-27
docker内网搭建dns使用域名访问替代ip:port的操作
这篇文章主要介绍了docker内网搭建dns使用域名访问替代ip:port的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-22真正可用的IIS的ISAPI-Rewrite伪静态URL图片防盗链规则写法
本规则支持白名单排除式防盗链,搜索引擎友好不屏蔽,被盗链后的错误提示转向,支持各种文件类型,经作者亲验真的能用...2016-01-27- 这篇文章主要介绍了ASP.NET中Global和URLReWrite用法,较为深入浅出的分析了Global.asax的功能及配置技巧,并实例分析了URLReWrite实现伪静态的方法,需要的朋友可以参考下...2021-09-22
- 最近这两天重新写了一下我的个人网站,在阿里云新买了一台服务器,配置好以后出现了一个问题,就是输入域名后域名地址会自动在后面追加两个斜杆,需要的朋友可以参考下...2020-07-10
- 这篇文章主要介绍了C#通过域名获得IP地址的方法,涉及C#中GetHostByName方法的使用技巧,需要的朋友可以参考下...2020-06-25
- Godaddy是全国10域名注册商之前,现在有很多站长都选择在Godaddy注册域名了,那是使用Godaddy dns解析感觉不如国内的好,那么我们要如何把Godaddy注册域名的dns修改成其它...2016-10-10
- 在由变量传过来的一个完整的url地址,我们需要取得地址中的域名,这里可以使用parse_url函数来处理,当然有用户使用正则来解决都是可以,下面看两个例子。 方法1php自带...2016-11-25
- 根据域名调用城市信息[全国二级域名] 本文章为你做一个页面,根据用户输入的域名调用不同城市的信息 function getServerName() { $ServerName = strtolower($_SE...2016-11-25
- 每个做网站的人都知道,域名对网站是很重要的,那么网站应该选择什么样的域名呢?拼音域名好还是英文域名好,不清楚的下面跟小编一起来看看。 小编是**座,在面对一些选择...2017-07-06
- ServerName www.111cn.net ServerAlias *.111cn.net 111cn.net RewriteEngine on RewriteCond %{HTTP_HOST} ^((?!www)w)+.111cn.net$ RewriteRul...2016-11-25
forum.php怎么去掉?Discuz教程/X3彻底去掉域名后面的/forum.php的方法
在安装discuz论坛源码的时候,我们会发现,链接的尾部多了一个forum.php,那么如何去除呢?下面详细讲解一下! 一、Discuz x3去掉主域名后面的/forum.php的方法修改方法:进...2017-07-06- 这篇文章主要为大家介绍下IIS中绑定域名的方法,需要的朋友可以参考下...2016-01-27