2012-01-10 2 views
0

이 내 현재 코드입니다 :mysql 쿼리에서 모두 일치하는 배열을 가져 옵니까?

$wonAwards = $altdb->get_var("SELECT achievement_id 
           FROM user_1 
           WHERE isTold='false'"); 

현재 $wonAwards가 SQL 쿼리의 첫 번째 결과와 동일하게 설정된다. $wonAwards을 쿼리의 모든 결과 배열과 동일하게 설정할 수 있습니까?

:

////////////////// 전체 기능

내 쿼리의 결과가 무엇인지 확인하기위한로서
function the_header_function(){ //called when wordpress header is loaded 
    if (is_user_logged_in()){ //checks if user is logged in 
     global $altdb; //wp global database object 
     $user_info = wp_get_current_user(); 
     $wonAwards = $altdb->query("SELECT achievement_id FROM user_".$user_info->ID." WHERE isTold='false'"); //query 
     if(is_array($wonAwards)) $hello='true'; 
     if(!is_array($wonAwards)) $hello='false'; 
     if($wonAwards != ''){ 
      echo "<script>jQuery(document).ready(function(){alert('".$hello."');});</script>"; 
     } 
    } 
} 

, 나는 단순히이 변경 이것에

echo "<script>jQuery(document).ready(function(){alert('".$hello."');});</script>"; 

:

echo "<script>jQuery(document).ready(function(){alert('".$wonAwards."');});</script>"; 
+1

'$ altdb'가 – zerkms

+0

인 것을 알지 못합니다. $ altdb는 연결을 설정하고 쿼리를 실행할 수있게 해주는 데이터베이스 정보가 들어있는 객체입니다. 난 그냥 SELECT 쿼리에서 결과로 배열을 얻는 방법을 알아야합니다 –

+0

@ ShahmeerNavid : 일반적으로 쿼리의 결과는 배열이고, 당신의 진술은 작동하고 있어야합니다, 나는'get_var'와 함께있는 것 같아요. 배열의 첫 번째 요소 만 가져옵니다. 코드가 있으면 그것을 게시하십시오. 또한 $ wonAwards에는 첫 번째 결과 만 포함된다는 것을 어떻게 알 수 있습니까? 어떻게 테스트 했습니까? –

답변

1

글쎄, Documentation Here에 따르면, get_var 당신에게 단일 다시 줄 것이다 sult를 입력하고 query을 입력하면 결과 수가 표시됩니다. (모든 결과를 얻는) 당신이 정말로 원하는 무엇

get_results 방법에 의해 달성 될 수있다, 그래서 당신은 작성해야 :

$wonAwards = $altdb->get_results("SELECT achievement_id 
           FROM user_1 
           WHERE isTold='false'"); 

그것을 시도하고 작동하는지 우리에게, 즉 도움이되기를 바랍니다.

+0

고마워요 잘 했어! –

+0

환영합니다, 문서는 항상 갈 방법입니다 :) –

0

난 당신이 배열을 설정할 것을 이해로서 대신의
홉과 동일 전자이 작동합니다 :

$wonAwards = $altdb->get_var("SELECT achievement_id 
          FROM user_1 
          WHERE isTold 
          IN ('false', 'true', 'another_value', 'some_other')"); 

편집 : @Shahmeer에 대한 인 Navid
당신은 당신이 데이터로부터 얻을 경우에도 mysql_real_escape_string()을 사용

$array = array("data1", "data2", "data3"); 
$implode = implode("', '", $array); 

//Output or $implode 
data1', 'data2', 'data3 

//apply on query 
$wonAwards = $altdb->get_var("SELECT achievement_id 
          FROM user_1 
          WHERE isTold 
          IN ('$implode')"); 

PS 같은 배열의 일부 데이터가있는 경우 클라이언트

+0

마지막 줄을 설명해 주시겠습니까? 구체적으로, 매개 변수 ('거짓', '사실', ....) –

+0

내가 지금 당신의 코드를 볼 때, 그 비트 변화, 나는이 질문에 따르면, Wordpress에 대해 모르겠다, 당신을 설명하자. –

관련 문제