2014-01-10 4 views
1

나는 워드 프레스 사이트에서 정의되지 않은 색인 PHP 통지를 고치려고합니다.수정 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']) { 

그러나 작동하지 않습니다.

지원해 주셔서 감사합니다.

+1

if (isset ($ _ GET [ 'pricing'] == '1')))? 그게 뭐야? 나는 당신이 사용해야한다고 생각하고 (isset ($ _GET [ 'pricing']) {// 그것을 사용합니다.} – Rottingham

+0

Quick & Dirty "hideaway"(고치는 것은 아닙니다!) : error_reporting 레벨을 낮추십시오. 이 메시지 유형을 숨기지 만 클라이언트를 진정시키는 데만 권장됩니다. 이것은 전문적 개발이 아닙니다. – Sliq

+0

isset 함수를 올바르게 작성하는 것이 더 빠르지 않고 더러워지지 않을 것 같습니다. – DNACode

답변

3

변수가 설정되어 있는지 살펴보고 내용을 확인하십시오. 와

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

하여 확인할 경우 절 경우 절 자체 isset() 대신 변수입니다.

ps : 왜 숫자 1을 문자열 1로 검사합니까?

+0

php> $ a = 1; php> var_dump ($ a =='1 '); bool (true) php! – jdp

+0

== 사용하면 '1'과 같을 것이고, 1은 같을 것입니다. 만약 OP가 IF 반환 값 = 1이라고 생각했다면, – Rottingham

2

잘못된 isset() 확인을 변환하십시오.

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

기본값을 할당하려면 짧은 핸드 버전이 이와 같습니다.

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

currency_select가 설정된 경우 작동합니다.

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

을 사용합니다. 그러나 그것이 특정 값으로 설정되었는지 어떻게 확인할 수 있습니까? 값? '[ 'currency_select'] == '무언가'? – tlt2w

+0
+0

그것. 나는 @strub이 이런 종류의 if 문을 처음으로 수행 했으므로 그의 대답을 표시했다. 감사! – tlt2w