简单前后端交互
本文只有两个php页面,其中6.PHP是表单及提交,5.PHP是处理验证6.PHP提交的内容。 环境搭建为PHPstudy2016,数据库为MySQL,table表为zkaq,如图:
6.php:
<form action="5.php" method="post" target="_self"> name:<input type="text" name="username"/></br> password:<input type="password" name="password"/> <input type="submit"/> </form>
5.php
<?php
header("Content-Type: text/html;charset=utf-8");
if(stripos($_REQUEST['username'],'union')){ # 判断是否有union联合注入
die("可能有联合注入风险");
}elseif(is_null($_REQUEST['username'])){
die("用户名不能为空!");
}elseif (strlen($_REQUEST['username'])>8){
die( "用户名过长!");
} else
{
$conn= mysqli_connect("127.0.0.1","root","root"); #连接
mysqli_select_db($conn,"mysql"); #库名mysql
$sql="select name, pwd from zkaq where name ='{$_REQUEST['username']}' and pwd ='{$_REQUEST['password']}'"; #查询出结果 表名:zkaq
# var_dump(mysqli_query($conn,$sql)); 查看查询返回结果 是一个对象
$result=mysqli_query($conn,$sql); #接收结果给$result
$row=mysqli_fetch_row($result);
/*mysql_fetch_row() 从和结果标识 data 关联的结果集中取得一行数据并作为数组返回。每个结果的列储存在一个数组的单元中,偏移量从 0 开始。
依次调用 mysql_fetch_row() 将返回结果集中的下一行,如果没有更多行则返回 FALSE。*/
if($row){
echo "登陆成功!";
} else
{
echo "登陆失败!";
}
}
?>
作者:求知鱼
-------------------------------------------
个性签名:你有一个苹果,我有一个苹果,我们交换一下,一人还是只有一个苹果;你有一种思想,我有一种思想,我们交换一下,一个人就有两种思想。
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!
独学而无友,则孤陋而寡闻,开源、分享、白嫖!