修复PHP注意:Wordpress上的“未定义索引”

时间:2014-01-10 21:32:14

标签: php wordpress isset

我正在尝试在wordpress网站上修复未定义的索引PHP通知。

目前这就是我所得到的:

    <?php if($_SESSION['currency-select'] == "a") echo 'selected="selected"';?>

我试着用这种方式写,但随后该网站出现了问题:

    <?php if(isset($_SESSION['currency-select'] == "a")) echo 'selected="selected"';?>

此外,我有一个查询,也没有isset,我正在尝试解决它:

                    if($_SESSION['currency-select'] == 'b') {

                if($_GET['pricing'] == '1') {

                    $args['meta_query'][] = array(

                        'key' => 'price',

                        'value' => array( '0', '250' ),

                        'compare' => 'BETWEEN',

                        'type' => 'numeric'

                    );

                }

我试着写:

      if(isset($_GET['pricing'] == '1')) {
      if($_GET['pricing']) {

但它也不起作用。

感谢您的支持!

3 个答案:

答案 0 :(得分:4)

尝试查看变量是否设置,然后检查变量的内容。

if( isset($_GET['pricing']) && $_GET['pricing'] == '1' ){
   //- do some magic
}

使用if子句检查子句本身isset()而不是变量。

ps:为什么要将数字1作为字符串1检查?

答案 1 :(得分:3)

只需转换你的错误的isset()检查。

if (isset($_GET['pricing'])) {
    $pricing = $_GET['pricing'];
}

如果要分配默认值,短手版本将如下所示。

$pricing = (isset($_GET['pricing'])) ? $_GET['pricing'] : 0;

答案 2 :(得分:1)

如果设置了currency_select,这应该有效。

 <?php if(isset($_SESSION['currency_select'])) echo "selected='selected'";?>