2015-01-30 3 views
0

나는 분해 된 값으로 데이터를 얻으려고했지만 비참하게 실패하고 있으며 내가 수행 한 모든 연구에도 불구하고 완전히 우둔합니다.분해 값에서 데이터 얻기

$array = explode(",", $hos['prop_owner']); 
list($a) = $array; 
$gu = $db->prepare("SELECT * FROM users WHERE user_id = :id"); 
$gu->execute(array(':id' => $a)); 
$dau = $gu->fetch(); 

echo $hos['prop_name']."<br><small>"; 

if(end($array)){ 
    echo "<a href='/user/view/".$dau['user_id']."' style='color:#".$dau['user_colour']."'>".$dau['user_name']."</a></small><br>"; 
} else { 
    echo "<a href='/user/view/".$dau['user_id']."' style='color:#".$dau['user_colour']."'>".$dau['user_name']."</a>,"; 
} 

은 현재 데이터베이스 필드 $hos['prop_owner'] 사용자의 ID (이 필드는 잠재적으로 미래에 더 ID를 포함 할 수 있습니다)있는 값 "2,20"을 포함 이 같은 코드가 모습입니다. 내가 원하는 것은 모든 사용자 데이터를 분해 된 값 (이 경우 2와 20)에서 얻은 다음 정보를 순서대로 반향시키는 것입니다.

다시 설명 :
나는 쉼표로 구분 사용자 ID를 무제한으로 포함하도록되어 prop_owner라는 내 데이터베이스에서 필드를 가지고있다. 형식 : 1,2,3,4.
이 필드에서 값을 가져 와서 어떻게 든 사용자 ID를 분리하고 개별적으로 사용자 이름을 검색하여 반향시키고 싶습니다.
예제 결과 : Darren, Eva, Miles, Lisbeth

나는 내가 이걸 가지고 가려고하는 곳을 이해할만큼 충분히 자신감이 있었으면 좋겠다.
미리 감사드립니다. 쿼리가 여기에 전달되는 모든 ID의 모든 데이터를 반환합니다, 그래서 당신은 사용자 모두의 데이터가 필요

SELECT * FROM users WHERE user_id in (2,20) 

처럼 모든

+0

음 뭘하려고하는지 잘 모르겠습니다. 너는 지식이 부족하거나 오해가있다. 어째서'foreach'를 사용하여 배열을 실행하고 추가하려고하는 새로운 값으로 정렬할까요? – Danny

+0

분해 된'$ array' 사용자 ID를 어떻게 쿼리에 묶을 수 있는지 http://stackoverflow.com/questions/920353/can-i-bind-an-array-to-an-in-condition을 참조하십시오. – jszobody

+0

나는 대니를 이미 시험해 보았습니다. 그렇기 때문에 내가 여기있는 이유에 대한 지식이 부족합니다. @jszobody를 보내 주신 링크의 코드가 폭발적이지는 않지만 폭발적입니다. 그리고 나는 운이없는 두 가지 일을 시도했다. – Darren

답변

0

먼저 쿼리 당신이 직접 할 수 있습니다 .. 될 것입니다 여기를 지나치지 만 보안을 처리해야합니다 ... 또는 그러한 쿼리에서 값을 안전하게 전달하는 방법을 확인할 수 있습니다 ...