• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

79 基于 PHP 的用户认证

php 搞代码 4年前 (2022-01-23) 33次浏览 已收录 0个评论
<code>如果希望在每一段脚本上都进行口令保护,可以结合使用<span>header</span>()语句、<span>$PHP_AUTH_USER</span>和<span>$PHP_AUTH_PW</span>来建立基<b style="color:transparent">来&源gao@dai!ma.com搞$代^码%网</b><img>搞gaodaima代码</img>本的认证方案,通常的基于服务器的提问<span>/</span>响应顺序都如下所示:    <span>1</span>、用户从服务器上请求一个文件。如果这个文件在服一个<span>401</span>(示经授权的用户)字符串。    <span>2</span>、浏览器收到这个响应后,弹出要求用户输入用户  名<span>/</span>口令的对话框。  钮将信息返回服务器供认证使用。    <span>4</span>、如果用户名和口令有效,被保护的文件将向用户开放,  只要用户还在使用文件,认证会一直有效。  起自动显示用户名<span>/</span>口令对话框的HTTP头部就可以模仿HTTP的提问<span>/</span>响应系统,PHP把用户在用户名<span>/</span>口令对话框中输入的信息存储在<span>$PHP_AUTH_USER</span>和<span>$PHP_AUTH_PW</span>中,使用这二个变量,就可以与存储在文本文件、数据库等文件中的用户名<span>/</span>口令进行比较。    这个例子采用了二个硬编码的值进行认证,但无论用户  名和口令放在什么地方,其原理都是相同的。 </code>
<code><span><span><?php</span><span>if</span> ((!<span>isset</span>(<span>$PHP_AUTH_USER</span>)) || (!<span>isset</span>(<span>$PHP_AUTH_PW</span>))) {   <span>/* 如果没有值,则发送一个能够引发对话框出现的头部*/</span>   header(<span>'WWW-Authenticate: Basic realm="My Private Stuff"'</span>);   header(<span>'HTTP/1.0 401 Unauthorized'</span>);    <span>echo</span><span>'Authorization Required.'</span>;    <span>exit</span>;   } <span>else</span><span>if</span> ((<span>isset</span>(<span>$PHP_AUTH_USER</span>)) && (<span>isset</span>(<span>$PHP_AUTH_PW</span>))){    <span>/* 变量中有值,检查它们是否正确*/</span><span>if</span> ((<span>$PHP_AUTH_USER</span> != <span>"validname"</span>) || (<span>$PHP_AUTH_PW</span> != <span>"goodpassword"</span>)) {        <span>/* 如果输入的用户名和口令中有一个不正确,则发送一个能够引发对话框出现的头部 */</span>         header(<span>'WWW-Authenticate: Basic realm="My Private Stuff"'</span>);         header(<span>'HTTP/1.0 401 Unauthorized'</span>);         <span>echo</span><span>'Authorization Required.'</span>;        <span>exit</span>;        } <span>else</span><span>if</span> ((<span>$PHP_AUTH_USER</span> == <span>"validname"</span>) || (<span>$PHP_AUTH_PW</span> == <span>"goodpassword"</span>)) {        <span>/* 如果二个值都正确,显示成功的信息 */</span><span>echo</span><span>"<P>You're authorized!</p>"</span>;        }    }<span>?></span></span></code>
<code>需要注意的是,如果你使用的是基于文件的保护机制,它并不能保证目录中所有的文件的安全。它可能保护大部分的文件,如果你认为它能够保护给定目录中的所有文件,你的这种认识就需要变变了。 </code>

‘).addClass(‘pre-numbering’).hide(); $(this).addClass(‘has-numbering’).parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('

  • ‘).text(i)); }; $numbering.fadeIn(1700); }); }); </script>

    以上就介绍了79 基于 PHP 的用户认证,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。


    搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
    转载请注明原文链接:79 基于 PHP 的用户认证
    喜欢 (0)
    [搞代码]
    分享 (0)
  • 发表我的评论
    取消评论

    表情 贴图 加粗 删除线 居中 斜体 签到

    Hi,您需要填写昵称和邮箱!

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址