重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
?php
创新互联公司是一家网站设计公司,集创意、互联网应用、软件技术为一体的创意网站建设服务商,主营产品:响应式网站设计、高端网站设计、营销型网站。我们专注企业品牌在网站中的整体树立,网络互动的体验,以及在手机等移动端的优质呈现。成都网站制作、做网站、移动互联产品、网络运营、VI设计、云产品.运维为核心业务。为用户提供一站式解决方案,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏析悦目的作品,网站的价值服务。
$localhost = 'localhost';//本地的基本是用localhost
$dbname = 'dbname';//数据库名
$user = 'user';//用户名
$pw = 'pw';//密码
$pdo = new PDO("mysql:host=".$localhost.";dbname=".$dbname."",$user,$pw);
$pdo-query('set names utf8');
$username = $_POST['username'];
$userpassword = $_POST['userpassword'];
$sql = 'SELECT userpassword FROM `userinf` WHERE `username`="' . $username . '"';
$row = $pdo-query($sql)-fetch();//查询数据库
if($userpassword == $row['userpassword'])
{
@header("Location: http://网址");//配对成功,跳转
}
else
{
exit('不好意思,你的密码不对');
}
/*
就是这么的简单,但是一般的验证用户密码不是这样的,首先一般存数据库里面的密码都是加密的,通常的MD5加密
而且POST提交过来的数据也要过滤一下
*/
?
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
title用户登录验证/title
/head
body
form method="POST"
用户名:input name="username" type="text" / | 密码:input name="userpassword" type="password" / | input type="submit" value="提交"
/form
/body
/html
用file方法获得的数组元素是包含行结束符(换行符)的,所以直接比对的话肯定是不匹配的。可以用rtrim()函数把行结束符去掉再来比对,但建议最好换成逐行读取文件的方式而不是直接用file函数读取到数组中
先用正则表达式匹配tr标签内的数据,再用正则表达式匹配td标签内的数据
完整的php程序如下
?php
$str = 'tr class="text-c"td1/tdtd2/tdtd3/tdtd4/tdtd5/tdtd6/tdtd7/tdtd8 18:55/td!--设防状态--td9/td!--围栏状态--td10/tdtd class="td-status"11/tdtd class="td-status"12/tdtd class="td-manage" style="max-width: 300px;"13/td/tr';
preg_match_all ('/tr class="text-c"(.+?)\/tr/im', $str, $result);
for ($i=0; $icount($result[1]); $i++) {
$s=$result[1][$i];
preg_match_all ('/td.*?(.+?)\/td/im', $s, $matches);
for ($j=0; $jcount($matches[1]); $j++) {
echo $matches[1][$j]."br";
}
}
?