很多站长朋友们都不太清楚php用户系统实例,今天小编就来给大家整理php用户系统实例,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP简单的实例书 2、 php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例 3、 PHP怎样模拟登录教务系统?最好有源码实例。 4、 PHP HTTP 认证实例详解 5、 求php的实例代码 PHP简单的实例书<<零基础学PHP、MYSQL>>可以看下这书,这讲的都很全面,PHP基础语法入门,还有数据库建立连接等,同时也有一些案例:第五篇 PHP综合实例
第17章 PHP留言板实例
17.1 数据库设计
17.2 共用页面部分
17.2.1 共用头部页面
17.2.2 共用尾部页面
17.2.3 样式文件
17.2.4 操作数据库配置文件
17.3 UBBCode转换为HTML
17.4 留言列表页面
17.5 发表留言程序
17.5.1 留言表单页面
17.5.2 发布留言操作程序
17.6 管理员的登录
17.6.1 管理员登录页面
17.6.2 管理员登录处理页面
17.7 管理员的回复程序
17.7.1 管理员回复表单页面
17.7.2 管理员回复操作程序
17.8 设计首页
17.9 小结
第18章 新闻发布系统
18.1 数据库准备
18.1.1 设计数据库
18.1.2 创建数据表
18.1.3 设计数据表字段
18.2 添加新闻
18.2.1 添加新闻的代码实现
18.2.2 添加新闻的界面效果
18.3 修改新闻
18.3.1 修改新闻的代码实现
18.3.2 修改新闻的界面效果
18.4 删除新闻
18.4.1 删除新闻的代码实现
18.4.2 删除新闻的界面效果
18.5 浏览新闻
18.5.1 浏览新闻的代码实现
18.5.2 浏览新闻的界面效果
18.6 小结
第19章 PHP论坛
19.1 数据库准备
19.2 共用显示部分
19.2.1 共用头部页面
19.2.2 共用尾部页面
19.2.3 数据库连接文件
19.3 用户注册
19.3.1 生成用户注册页面
19.3.2 用户注册处理页面
19.4 登录页面
19.5 发表文章程序部分
19.5.1 发表文章的表单页面
19.5.2 发表文章处理页面
19.6 文章的显示页面及文章的回复程序
19.6.1 文章的详细列表页面
19.6.2 回复文章程序
19.7 文章的锁定操作
19.7.1 设置锁定操作
19.7.2 取消锁定操作
19.8 文章的置顶操作
19.8.1 设置置顶操作
19.8.2 取消置顶操作
19.9 文章的删除及修改
19.9.1 删除文章操作
19.9.2 修改用户资料表单页面
19.9.3 修改用户资料处理页面
19.10 论坛主页面
19.11 小结
但你也可以在网上下载一些视频教程来辅助学习,这样效果会更好.
php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例本文所述php实例可以完成获取局域网所有用户的电脑IP和主机名、及mac地址的功能,对于php程序设计人员有一定的参考借鉴价值。完整代码如下:
<?php
$bIp
=
gethostbyname($_ENV['COMPUTERNAME']);
//获取本机的局域网IP
echo
"本机IP:",$bIp,"\n";
echo
"本机主机名:",gethostbyaddr($bIp),"\n\n\n";
//gethostbyaddr
函数可以根据局域网IP获取主机名
//默认网关IP
list($ipd1,$ipd2,$ipd3)
=
explode('.',$bIp);
$mask
=
$ipd1
.
"."
.
$ipd2
.
"."
.
$ipd3
;
exec('arp
-a',$aIp);
//获取局域网中的其他IP
foreach(
$aIp
as
$ipv)
{
if(strpos($ipv,'接口')
!==
false)
{//一下显示的IP是否是当前局域网中的
而不是其他的类型
可以在cmd下试一下命令
$bool
=
false;
preg_match('/(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))/',$ipv,$arr);
if(strcmp($arr[0],$bIp)
==
0)
{
$bool
=
true;
}
}
else
{
if($bool)
{
$str
=
preg_replace('/\s+/',
'|',
$ipv);
$sArr
=
explode('|',$str);
if($sArr[1]
==
'Internet'
||
empty($sArr[1]))
{
continue;
}
//去除默认网关
if(strcmp($mask
.
".1",
$sArr[1])
==
0)
{
continue;
}
//去除同网关下255的IP
if(strcmp($mask
.
".255",
$sArr[1])
==
0)
{
continue;
}
//去除组播IP
list($cIp)
=
explode('.',
$sArr[1]);
if($cIp
>=
224
$cIp
<=
239)
{
continue;
}
echo
"IP地址:|",$sArr[1],"|\n";
echo
"MAC地址:",$sArr[2],"\n";
echo
"主机名:",gethostbyaddr($sArr[1]),"\n";
echo
"\n\n";
}
}
}
该程序是在cli模式下运行的,在浏览器上应该也可以
php获取局域网中的用户ip功能就完成了,主要用到的是php的exec函数
和window的arp
-a
命令
其中获取本机IP:gethostbyname($_ENV['COMPUTERNAME'])
有别于以往的写法,感兴趣的朋友可以继续深入研究一下。
获取主机名函数:gethostbyaddr(IPd)
这个函数功能也很强大。
PHP怎样模拟登录教务系统?最好有源码实例。前几天刚实现了一个,难点主要有3块:
1:http头部模拟
2:在使用curl做POST的时候, 当要POST的数据大于1024字节的时候, curl并不会直接就发起POST请求, 而是会分为俩步,
3:post的数据,有几个字段是用js计算出的,需要用php模拟出
附:curl_setopt($ch,CURLOPT_POSTFIELDS, http_build_query($data));
PHP HTTP 认证实例详解HP来实现HTTP的强制认证是十分简单的,只需简单的几行代码就可以实现,下面我们来看一个例子,然后结合这里例子我向大家详细介绍一下PHP实现HTTP认证。
<?php
if(!isset($_SERVER['PHP_AUTH_USER']))
{
header('WWW-Authenticate:
Basic
realm="系统名称"');
header('HTTP/1.0
401
Unauthorized');
echo
'未通过HTTP认证.';
exit;
}
else
{
echo
'认证通过.';
echo
'用户名:
'.$_SERVER['PHP_AUTH_USER']."\n";
echo
'密码:
'.$_SERVER['PHP_AUTH_PW']."\n";
}
?>
1.实现说明
怎么样,看到上面的代码了吧,就这么几行添加到你的程序页面上就可以实现了.
它是通过利用header()函数向客户端浏览器发送”Authentication
Required”信息,强制其弹出一个用户名/密码输入窗口,当用户输入用户名和密码后,包含有URL的PHP脚本将会加上预定义变量PHP_AUTH_USER,
PHP_AUTH_PW和AUTH_TYPE然后再次调用,这三个变量分别表示用户名,密码和认证类型(从PHP5.0.1起开始支持”Basic”和”Digest”两种认证方式),它们被保存在$_SERVER(从HP>>4.1.0起有效)或$HTTP_SERVER_VARS(从PHP3起有效)数组中具体应用时,我们可以把验证的几行代码写成函数,只要判断到用户变量不存在或验证不正确就一直执行该函数并弹出窗口,而且还可以设置错误登录几次就不允许该用户访问,具体的使用大家使劲的发散思考吧.
2.注意事项:
1.这段代码必须放到程序的开始,且在其开始执行之前不能有任何输出(若有输出则需要使用输出缓冲函数才行).
2.PHP的HTTP认证机制仅在PHP以Apache模块方式运行时才有效,这个容易理解,它本身是HTTP强制认证,肯定是不适合于CGI版本,不能在命令行下执行的.
3.header发送标头代码时请小心.为了对所有的客户端保证兼容性,关键字”Basic”的第一个字母必须大写为”B”,分界字符串必须用双引号引用(不能是单引号);在HTTP/1.0和401之间必须有且仅有一个空格.
4.在上面列子中,仅输出了用户名和密码,而在实际系统中则可按照登录验证流程进行与数据库或其他方式进行判断和验证.
5.从PHP4.3.0起,为防止有人通过编写脚本来从页面上获取密码,当外部认证对特定页面有效,并且安全模式被开启时,PHP_AUTH变量将不会被设置.可以用REMOTE_USER来辨别外部认证的用户,用AuthType指令来判断外部认证机制是否有效.
6.要想让HTTP认证能够在IIS下工作,PHP配置选项cgi.rfc2616_headers必须设置为0(默认值).
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
求php的实例代码一般用户登是不用cookie的而是用session
以下是我的一人登程序
表单:
<FORM name=form1 action="<?=$PHP_SELF?>" method=post>
<TR height=5>
<TD width=5></TD>
<TD width=56></TD>
<TD></TD>
</TR>
<TR height=36>
<TD></TD>
<TD>用户名</TD>
<TD><INPUT name=userName id="userName"
style="BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid" size=24
maxLength=30></TD>
</TR>
<TR height=36>
<TD> </TD>
<TD>口 令</TD>
<TD><INPUT
name=password
type=password id="password"
style="BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid" size=24 maxLength=30></TD>
</TR>
<TR height=5>
<TD colSpan=3></TD>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
<TD><INPUT type=image height=18 width=70
src="images/bt_login.gif"></TD>
</TR>
<input type="hidden" value="action" name="action" />
</FORM>
处理表单程序
<?
header("Content-Type: text/html;charset=utf-8");
session_start();
require "common/dbconn-utf-8.php";
$Conn=@DBConn();
?>
<?
$iTABLE = "userTab";
?>
<?
function getIP(){global $ip;if (getenv("HTTP_CLIENT_IP"))$ip = getenv("HTTP_CLIENT_IP");else if(getenv("HTTP_X_FORWARDED_FOR"))$ip = getenv("HTTP_X_FORWARDED_FOR");else if(getenv("REMOTE_ADDR"))$ip = getenv("REMOTE_ADDR");else $ip = "Unknow";return $ip;}
if($_POST["action"]=="action"){
$userName = $_POST['userName'];
$password = $_POST['password'];
if($userName $password)
{
$rs = mysql_query("select id,title from `".$iTABLE."` where title = '$userName' and password = '$password'");
$num = mysql_num_rows($rs);
if($num == 1){
$AdminID = mysql_result($rs,0,"id");
$AdminTitle = mysql_result($rs,0,"title");
$sqlUpdate = "update userTab set LoginTimes = LoginTimes + 1,ip='".getIP()."' where id=".$AdminID;
//echo $sqlUpdate;
mysql_query($sqlUpdate);
// $update_sql = "Update ajax_book Set relcontent = '$relcontent',reltime = '$reltime' Where id = '$id'";
$_SESSION["ADMINID"] = $AdminID;
$_SESSION["ADMINTITLE"] = $AdminTitle;
//echo $_SESSION["ADMINTITLE"];
@mysql_close($Conn);
$newWin = "./"; //跳转至登陆
header("Location:".$newWin);
exit;
}
}
$Msg = "<script>alert('用户名或密码错误!');location.href='login.php'</script>";
echo $Msg;
@mysql_close($Conn);
}
?>
dbconn-utf-8.php文件
<?
/*
* 数据库连接池
* copyright 2004/01/03
* write by jatic
* filename dbconn.php
*/
function DBConn()
{
//$dbServer="localhost";
//$dbUser="root";
//$dbPasswd="lwf";
//$dbName="database_zhongchang";
$dbServer="111.111.111.111";
$dbUser="222";
$dbPasswd="222";
$dbName="222";
$Conn=@mysql_connect($dbServer,$dbUser,$dbPasswd) or die(mysql_error());
if(!$Conn){
echo "无法与数据库建立连接!";
exit;
} else {
if(@mysql_select_db($dbName)) {mysql_query("SET NAMES 'utf8'");return $Conn;}
else {
echo "无法选择数据库!";
exit;
}
}
}
?>
关于php用户系统实例的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。