2013-12-10 81 views
0

头位置我有使用内部开关的情况下

$CID = $_REQUEST ['cid']; 
$UID = $_REQUEST ['uid']; 

if ($UID == '0') { 
    header ('Location: url/you-need-to-log-in-before-redirect/'); 
} else { 

    switch ($CID) { 
     // go to URL1 case number is the same as CID 
     case "147" : 
      header ('Location: url' . $UID); 
      break; 
     case "148" : 
      header ('Location: url' . $UID); 
      break; 
     default : 
      echo "Something went terribly wrong"; 
    } 
} 

这是好吗?我有一个$ UID注册为空白的问题,这是不应该的,因为它对于非注册用户而言始终设置为0,并且对于注册它是唯一的。我应该使用exit()而不是break?或两者?或者我不应该使用头文件来发送用户...我在这个switch case语句中有数百个案例。我不能发布任何实际的网址,所以示例中的'url'不是一个变量,而只是实际完整地址的占位符。

回答

0

是零的类型整数吗?如果是,你的条件是错误的,因为它测试字符串,但你有一个整数。

尝试:if ($UID == 0) {和开关情况相同。

+0

$ UID和$ CID都是整数,我通过?cid = xxxxx&uid = yyyyy将它们发送到.php文件。 – user3086505

+0

当我存储$ CID中的值和$ UID在前两行不是他们存储为整数,即使我使用$ _reguest? – user3086505