Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php laravel if语句不起作用_Php_Laravel_If Statement - Fatal编程技术网

Php laravel if语句不起作用

Php laravel if语句不起作用,php,laravel,if-statement,Php,Laravel,If Statement,有谁能告诉我,为什么当结果相等时,它会返回响应,但当结果为假时,它会显示空白页。我肯定我在什么地方出错了 if(isset($_GET['EX1']) && $_GET['EX2'] != ""){ $Email = $_GET['EX1']; $Password = $_GET['EX2']; $userDetails = DB::table('applicants') ->where('Emai

有谁能告诉我,为什么当结果相等时,它会返回响应,但当结果为假时,它会显示空白页。我肯定我在什么地方出错了

if(isset($_GET['EX1']) && $_GET['EX2'] != ""){

        $Email = $_GET['EX1'];
        $Password = $_GET['EX2'];

        $userDetails = DB::table('applicants')
            ->where('Email', '=', $Email)
            ->where('Password','=', $Password)
            ->get();

        if($Email = $userDetails[0]->Email && $Password = $userDetails[0]->Password){

            echo 'Both are the same ';

        }else{

            echo 'Not the same';

        }
    }
这会有用的

public function myfunction(Request $request) {
    if(!empty($request->EX1) && !empty($request->EX2)){

        $Email = $request->EX1;
        $Password = $request->EX2;

        $userDetails = DB::table('applicants')
            ->where('Email', '=', $Email)
            ->where('Password','=', $Password)
            ->get();

        if($Email == $userDetails[0]->Email && $Password == $userDetails[0]->Password){

            return 'Both are the same ';

        }else{

            return 'Not the same';

        }
    } else {
        return 'error';
    }
}
顺便说一句,您需要将
if(…=…)
更改为
if(…=…=…)
<代码>=用于分配值,
=
用于比较值

希望这能奏效

if($Email = $userDetails[0]->Email && $Password = $userDetails[0]->Password){
应该是

if($Email == $userDetails[0]->Email && $Password == $userDetails[0]->Password){

您使用的是赋值
=
而不是比较
=
,比较总是返回
true

您是在路由或控制器中使用它吗?为什么不使用
Request
?如果您只是要查找数组中的第一个用户,可以使用
first()
而不是
get()
。然后您可以从userDetails中删除
[0]