2012-10-02 4 views
0

나는 다음과 같은 데이터베이스 라인 (ID, URL 입력) 이제점점 MySQL의 결과

id | url | type 

1 |google | go 
2 |yahoo | go 
3 |google | go 
4 |bing | go 

내가 가서 배열

에 결과를 얻을 유형의 모든 URL을 호출하고 싶습니다를 한 경우
$query = "select * from my_table Where type='go'"; 
$result = mysql_query($query) or die(mysql_error()); 
while($aax = mysql_fetch_array($result)){ 

$result_array[] = $aax[url]; 
$result_array = array_unique($result_array); 
print_r($result_array); 

} 

결과 어레이가 4 번 반복됩니다! 우리는 데이터베이스에서 4 개 결과를 가지고

Array 
(
    [0] => google 
) 
Array 
(
    [0] => google 
    [1] => yahoo 
) 
Array 
(
    [0] => google 
    [1] => yahoo 
) 
Array 
(
    [0] => google 
    [1] => yahoo 
    [3] => bing 
) 

내 질문 내가 반복하지 않고 결과 배열을 얻을 그냥

Array 
(
    [0] => google 
    [1] => yahoo 
    [3] => bing 
) 
을 다음과 같은 그래서 내가 원하는 결과 것은 모든 URL을 가지고 할 수있는 방법

~ 모든 도움 .. 감사합니다

답변

4

쿼리에 distinct 함수를 사용하십시오. 다만 정상적인 배열을 구축보다 D :

$query = "select distinct url from my_table Where type='go'"; 
$result = mysql_query($query) or die(mysql_error()); 

$result_array = array(); 

while($aax = mysql_fetch_array($result)){ 
    $result_array[] = $aax['url']; 
} 
print_r($result_array); 

참고 :이 소스에 몇 가지 사소한 버그를 수정.

1
$result_array = array_merge($result_array, $aax[url]);