开发者社区> 问答> 正文

关于php验证的函数问题,报错

我在设置一个登陆验证,从 页面$_POST过来一个数组,包含 user,password,verify的信息。

假设 $arr = $_POST;//获取的字段,包含 user,password,verify的信息

       $table = 'admin_user';//表名

我需要查询,并且验证用户名密码是否匹配,设置一个函数

function select($table,$arr){

$str = '`'.implode('`,`', array_keys('$arr')).'`'; 
    foreach($arr as $val){
        $val = "'".$val."'";
}
    $arr = "'".implode("','", $arr)."'";
    $sql = "select * from `{$table}`where {$str} = {$arr}";

现在的问题是,怎么把数组中不需要的元素 verify 验证码去掉,然后进行比对

}

如果mysql_query 执行的话,或者打印出来,格式也不太对。

展开
收起
一枚小鲜肉帅哥 2020-05-28 13:19:04 434 0
1 条回答
写回答
取消 提交回答
  • 菜不可及的程序猿
    $not_needed = ['verify', ];
    
    foreach($post as $item => $value){
    	if(!in_array($item, $not_needed)){
    		$here[] = '`' . $item . '`="' . $value . '"';
    	}
    }
    
    $here = implode(' and ', $here);
    $sql = 'select * from table_name where ' . $here;



    unset($_POST['verify']);

    unset($arr['verify']);


    $str = '`'.implode('`,`', array_keys('$arr')).'`'; 

    array_keys('$arr')

    function select($table,$arr){
    unset($arr['verify']);
    $str = '`'.implode('`,`', array_keys($arr)).'`';
    foreach($arr as $val){
    $val = "'".$val."'";
    }
    $arr = "'".implode("','", $arr)."'";
    $sql = "select * from `{$table}`where {$str} = {$arr}";
    print_r($sql);
    // $query = mysql_query($sql);
    // return $query;


    }
    打印出来的效果:

    打印出来,select * from `admin_user`where `user`= ‘kopa’ and `password` = '3363064'

    $not_needed = ['verify', ];

    foreach($post as $item => $value){ if(!in_array($item, $not_needed)){ $here[] = '' . $item . '="' . $value . '"'; } }

    $here = implode(' and ', $here); $sql = 'select * from table_name where ' . $here;



    function select($table,$arr){
        foreach ($arr as $key => $value) {
        $here[] = '`'.$key.'`='.$value;
    }
        $here = implode(' and ', $here);
        $sql = "select * from $table where ".$here;
        print_r($sql);
    //验证码环节在提交的时候unset掉了 }

    2020-05-29 13:11:58
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
阿里云栖开发者沙龙PHP技术专场-深入浅出网络编程与swoole内核-吴镇宇 立即下载
PHP安全开发:从白帽角度做安全 立即下载
PHP 2017.北京 全球开发者大会——高可用的PHP 立即下载