php如何验证用户名和密码
// 最原始的写法. 不能防止注入攻击, 学习的时候用一下可以. 正式项目不行
$sql = 'select * from DATA where ACNT="' . $username . '" and PSWD="' . $pass . '"';
❷ php正则表达式验证用户名
//中文和英文结合而且6-20字符
$preg='/^[a-zA-Z\x{4e00}-\x{9fa5}]{6,20}$/u';
//英文、数字、下划线6-20位字符
$preg='/^[\w\_]{6,20}$/u';
过滤非法字符防止SQL注入漏洞,只能另说,对不同的接口和参数有针对性的过滤,没有通用的正则。
❸ php登陆用户名密码验证 输入用户名和密码后 还一直提示请输入用户名,代码如下
后台和前端页面不对应啊哥,你这是注册页面,而后台的php是登陆用的。 至于弹出密码提示,那是你前端的javascript
❹ php如何登入判断用户名和密码
在输入完后,当输入框失去焦点,就要获取输入框的值,在与数据库中的值比较。用JavaScript ajax去请求服务器中的check.php(这是个用来判断是否有重值的页面)的值,有重值就返回false并提示有重复值。check.php就要先获取数据库中值,并循环比较输入框传来的值,相同就返回false
❺ PHP用户名密码怎么判断啊,要连接数据库QAQ
使用sqlite数据库实现网页登录
客户端网页login.php
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<title>微博入口</title>
<styletype="text/css">
.tit{
font-size:36px;
color:#06C;
font-style:normal;
text-align:center;
}
.lab{
font-size:16px;
color:#069;
}
.hin{
width:98%;
size:3;
color:#33FF66;
}
</style>
<scriptlanguage="javascript">
functioncheckfrm()
{
if(document.getElementById("txtuser").value=="")
{
window.alert("用户名不能为空!");
returnfalse;
}
if(document.getElementById("txtpwd").value=="")
{
window.alert("密码不能为空!");
returnfalse;
}
document.getElementById("frm1").action="funcexec.php";
//returntrue;
}
</script>
</head>
<body>
<formid="frm1"name="frm1"target="_self"method="post">
<div>
<pclass="tit">微博入口</p>
</div>
<hrclass="hin"/>
<div>
<tablewidth="309"border="0">
<tr>
<tdwidth="100"height="20"align="right"class="lab">用户名:</td>
<tdwidth="90"align="left"><labelfor="textfield"></label>
<inputname="txtuser"type="text"class="lab"id="txtuser"/></td>
</tr>
<tr>
<tdalign="right"class="lab">密 码:</td>
<tdalign="left"><inputname="txtpwd"type="password"class="lab"id="txtpwd"/></td>
</tr>
<trclass="content">
<tdcolspan="2"align="center"><inputtype="submit"name="btn"id="btn"value="提交"onClick="checkfrm()"/></td>
</tr>
</table></div>
</form>
</body>
</html>
php程序判断func.php
<?php
session_start();
$conn=newPDO("sqlite:pic/maindata.db");
$login_sth=$conn->prepare("selectcount(*)astfromusertabwhereuid=?andpwd=?");
$article_sth=$conn->prepare("select*fromArticleList");
if(isset($_POST["btn"]))
{
$uid=$_POST["txtuser"];
$pwd=$_POST["txtpwd"];
$login_sth->execute(array($uid,$pwd));
$tot=$login_sth->fetchAll();
if($tot[0][0]>0)
{
$_SESSION["userid"]=$uid;
echo("欢迎您,$uid");
echo("<ahref='index.php'>点击进入主页</a>");
}
else
echo("登陆失败");
}
else
{
echo("非法操作");
}
?>
❻ PHP验证用户用户名和密码问题
$row=mysql_fetch_array($check);
改成while($row=mysql_fetch_assoc){
if($row){
setcookie('username',username,time()+3600,'/');
echo "<script>location='ui/index.php'<script>";
}
}
else{
echo "erro";
}
❼ 求教PHP验证用户名或密码包含非法字符
例子代码:
$user="sdafdsg";
if(preg_match("/^[0-9a-zA-Z]{4,21}$/",$user)){
echo"OK";
}
下面是PHP官方对preg_match函数的介绍
preg_match
(PHP 4, PHP 5)
preg_match—执行一个正则表达式匹配
说明
intpreg_match(string$pattern,string$subject[,array&$matches[,int$flags= 0[,int$offset= 0]]] )
搜索subject与pattern给定的正则表达式的一个匹配.
参数
pattern
要搜索的模式,字符串类型。
subject
输入字符串。
matches
如果提供了参数matches,它将被填充为搜索结果。$matches[0]将包含完整模式匹配到的文本,$matches[1]将包含第一个捕获子组匹配到的文本,以此类推。
flags
flags可以被设置为以下标记值:
PREG_OFFSET_CAPTURE
如果传递了这个标记,对于每一个出现的匹配返回时会附加字符串偏移量(相对于目标字符串的)。 注意:这会改变填充到matches参数的数组,使其每个元素成为一个由 第0个元素是匹配到的字符串,第1个元素是该匹配字符串 在目标字符串subject中的偏移量。
offset
通常,搜索从目标字符串的开始位置开始。可选参数offset用于 指定从目标字符串的某个未知开始搜索(单位是字节)。
Note:
使用offset参数不同于向preg_match()传递按照位置通过substr($subject, $offset)截取目标字符串结果, 因为pattern可以包含断言比如^,$或者(?<=x)。 比较:
<?php
$subject="abcdef";
$pattern='/^def/';
preg_match($pattern,$subject,$matches,PREG_OFFSET_CAPTURE,3);
print_r($matches);
?>
以上例程会输出:
Array
(
)
当这个示例使用截取后传递时
<?php
$subject="abcdef";
$pattern='/^def/';
preg_match($pattern,substr($subject,3),$matches,PREG_OFFSET_CAPTURE);
print_r($matches);
?>
将会产生匹配
Array
(
[0] => Array
(
[0] => def
[1] => 0
)
)
返回值
preg_match()返回pattern的匹配次数。 它的值将是0次(不匹配)或1次,因为preg_match()在第一次匹配后 将会停止搜索。preg_match_all()不同于此,它会一直搜索subject直到到达结尾。 如果发生错误preg_match()返回FALSE。
更新日志
版本
说明
5.3.6 如果offset比subject的长度还要大则返回FALSE。
5.2.2 命名子组可以接受(?<name>),(?'name')以及(?P<name>)语法。之前版本仅接受(?P<name>)语法。
4.3.3 增加了参数offset.
4.3.0 增加了标记PREG_OFFSET_CAPTURE。
4.3.0 增加了参数flags。
范例
Example #1 查找文本字符串"php"
<?php
//模式分隔符后的"i"标记这是一个大小写不敏感的搜索
if(preg_match("/php/i",".")){
echo"Amatchwasfound.";
}else{
echo"Amatchwasnotfound.";
}
?>
❽ php 大家帮我看看,判断用户名与密码是否为空的代码对么
你弄反了
empty()函数是检测变量是否为空,如果是空则返回true,不为空则返回false
而!号是否定的意思
!empty($adminname)意思就是empty返回false
明显,你这条件是判断用户名和密码不为空的时候,提示“管理员名或密码不能为空,请填写管理员名及密码”,这不是矛盾吗
把那个感叹号去掉,例外,你这个逻辑是用户名和密码同时为空,才执行
那么,写入用户名但不写入密码,你这个判断条件就不成立了
所以,把 && 改成 ||
❾ php:用户名和密码验证,请问代码哪里有问题
if($tijiao=="提交")
{
$nameuser=$_POST['user'];
$namepsw=$_POST['psw'];
if($nameuser==""||$namepsw=="")
{
echo "用户名和密码不能为空!!!";
}
else if($nameuser="admin"||$namepsw="admin")
{
echo "正在验证密码";
}else{
echo "用户名与密码不匹配";
}
}
接受post数据要用 $_POST['参数名']
get数据是 $_GET['参数名']
❿ php验证用户名是否以字母开头与验证密码只能为数字和字母的组合
验证用户名是否以字母开头与验证密码只能为数字和字母的组合代码
三款三种常用验证函数 验证邮箱地址格式 验证密码只能为数字和字母的组合 验证用户名是否以字母开头代码哦,这是用户注册时或提交表单时会用的哦。
function is_email($email)
{
if (preg_match("/[a-za-z0-9]+@[a-za-z0-9]+.[a-z]{2,4}/",$email,$mail))
{
return true;
}
else
{
return false;
}
} /**
* 验证用户名是否以字母开头
*/
function is_user_name($user)
{
if (preg_match("/^[a-za-z]{1}([a-za-z0-9]|[._]){3,19}$/",$user,$username))
{
return true;
}
else
{
return false;
}
} /**
* 验证密码只能为数字和字母的组合
*/
function is_ps教程d($psd)
{
if (preg_match("/^(w){4,20}$/",$psd,$password))
{
return true;
}
else
{
return false;
}
}