if (isset($_POST['u'])) {
    $u = $_POSY['u'];
} elseif (isset($_GET['u'])) {
    $u = $_GET['u'];
} else {
    $u = 'forbidden';
}

解决方案 »

  1.   

    isset($_POST['u']
    这个是为了判断表单中name=u的变量的值是否存在,存在则进入分支
    $_POST说明表单的值是POST过来的
      

  2.   

    ($a='')?():()是个三元运算符号,满足条件则执行第一个括号里面的语句,不满足则取后者;依次类推;isset是判断一个变量是否赋值。
      

  3.   

    这个语句就是先判断$_POST['u'])这个是否赋值,如果赋值了取$_POST['u'])如果$_POST['u'])没有赋值那么判断$_GET['u']是否赋值,如果$_GET['u']赋值了则取$_GET['u']如果两者都没有赋值则变量$u赋值为forbidden总的来说就是得到上个页面传递的$u值,由于不能确定action所以要判断是POST还是GET