2

似乎很容易,但无法弄清楚原因:

if(!isset($_SESSION[$_REQUEST["form_id"]]))
{
     //do stuff
} 

回报

Notice: Undefined index: form_id

empty返回相同的响应。

这让我发疯了一段时间。:)

4

4 回答 4

4

您正在调用 isset ,$_SESSION但由于错误指出问题在于$_REQUEST['form_id']未设置。

 if (!isset($_REQUEST['form_id']) || !isset($_SESSION[$_REQUEST['form_id']])) {
于 2013-03-22T12:21:06.603 回答
2

那是因为它$_REQUEST['form_id']首先解决并导致通知。你可以这样做:

if (!isset($_REQUEST['form_id']) || !isset($_SESSION[$_REQUEST["form_id"]]))
{
     //do stuff
} 
于 2013-03-22T12:20:10.373 回答
0

请检查密钥是否存在

 array_key_exists('form_id', $_REQUEST);

在检查值之前

isset($_REQUEST['form_id']);
于 2013-03-22T12:21:35.003 回答
-1

或检查您的参数是否为空,例如

<?php 
if (!empty($_REQUEST['form_id'])) {
  // do anything
}
else
{
  // I can't find the key in array 
}
?>
于 2013-03-22T12:26:02.070 回答