Php从if语句重定向到新页面

时间:2017-08-18 10:23:59

标签: php url redirect header

请专业程序员在家里,这段代码有什么问题?

每当我尝试运行它时,我都会收到此错误。

  

解析错误:语法错误,意外&#39 ;;'在第8行的C:\ xampp \ htdocs \ a \ go.php

php代码:

<?php

$term=$_POST['term'];
$level=$_POST['level'];

if  (

$term = 'First';
$level='js1';

)
{
header("Location: result.php");
exit();
} 
elseif (
$term = 'First';
$level='js2'; 
)
{
header("Location: result2.php");
exit();
} 

else {
$error = "Entry is invalid";
}

?>

6 个答案:

答案 0 :(得分:3)

检查你的条件。 if和else if条件不得包含任何分号。如果您使用两个比较,则必须使用&amp;&amp;或||在他们之间。如果在if和elseif语句中使用=,那么它将始终返回true。

  myListView.setOnItemSelectedListener(new OnItemSelectedListener(){

    @Override
    public void onItemSelected(AdapterView<?> arg0, View arg1,
            int position, long arg3) 
    {

    }

    @Override
    public void onNothingSelected(AdapterView<?> arg0) {
        // TODO Auto-generated method stub

    }
});

答案 1 :(得分:2)

更改您的if条件

应该是

open

if($term = 'First'&& $level='js1') or if($term = 'First'|| $level='js1') 

   elseif ($term = 'First' && $level='js2') or elseifif($term = 'First'|| $level='js2')

答案 2 :(得分:1)

您的所有if语句格式都格式错误。您所做的只是在if语句中设置变量。因此,您没有正确使用赋值运算符。您的if语句应如何显示的示例如下:

if($condition === true || $condition2 == 'hello'){
    doSomething();
} else if($condition === false || $condtion2 == 'bye'){
    doSomethingElse();
}

编辑:我也建议您使用代码缩进技巧,这将有助于将来阅读您的代码。

答案 3 :(得分:0)

你没有在那些ifs中使用正确的布尔表达式。

if ($term === 'first' && $level === 'js1') {...}

elseif($term === 'First' && $level === 'js2') {...}

另外,我强烈建议你放一个die();重定向后,以避免不必要的负载(除非您需要在重定向后执行代码)。

答案 4 :(得分:-1)

试试这个。

<?php

    $term=$_POST['term'];
    $level=$_POST['level'];

    if( $term == 'First' && $level=='js1'){
        header("Location: result.php");
        exit();
    } elseif ( $term == 'First' && $level=='js2'){
        header("Location: result2.php");
        exit();
    } else {
        $error = "Entry is invalid";
    }
?>

答案 5 :(得分:-1)

如果有一个标题已经发送错误你收到然后把ob_start()放到你的php文件的顶部或者你也可以使用javascript,如下所示。

<script>window.location.href = "a.php";</script>