2013-02-12 5 views
1

현재 아래 테이블과 같은 테이블이 있습니다.배열의 특정 행을 에코합니다.

ID adPlacement  filePath dateAdded adName adLink 
12 1   Test 1.png 2013-02-12 Test 1 http://www.cuad.coop 
13 1   Test 2.png 2013-02-12 Test 2 http://www.google.com 

임의의 행을 선택하고 별도의 echo 문에서 adName, adLink 및 filePath를 모두 출력하려고합니다. 나는 그것을 테스트 2.png, 또는 테스트 2, http://www.google.com 내용을 기록하는 스크립트를 실행할 때 지금

$query_adSpot1 = "SELECT * FROM advertisements WHERE adPlacement = 1"; 
$result = mysql_query($query_adSpot1, $server) or die(mysql_error()); 
while($row = mysql_fetch_array($result)){ 
$row = array(
    'adName' => $row['adName'], 
    'filePath' => $row['filePath'], 
    'adLink' => $row['adLink'] 
); 
$fileLocation = $row; 
$fileLocations[] = $fileLocation; 
} 
shuffle($fileLocation); 
echo $fileLocation[0]; 

: 여기

내가 지금 사용하고있는 코드입니다.

임의의 행과 별도로 에코를 만들 수 있지만 동일한 행을 같게하기 위해 별도의 열이 필요합니다. 당신은 잘못된 배열을 걸어 갔다하는

echo filePath 
echo adName 
echo adLink 
+2

이 어떻게 개별적으로 행을 에코 않는 $ filelocaton [ 'INDEXNAME'] – Sedz

답변

1

, 당신이 사용되어야한다 :

shuffle($fileLocations); 
        ^This is the one with all your values 
var_dump($fileLocations[0]); 
// will show you an array with 3 elements from the same row in the database 

당신이 당신의 SQL 쿼리에있는 마지막 행을 다시 주문한다하고 있습니다.

+0

에코 MySQLRAND() 기능을 사용할 수 있습니까? 나는 이것을 끝에 추가했다 : shuffle ($ fileLocations); var_dump ($ fileLocations [0]); echo $ row [ 'adName']; 그래서 요소 중 하나를 에코하려고합니다. – StevoBot

+0

@StevoBot'echo $ fileLocations [0] [ 'adName']','echo $ fileLocations [0] [ 'filePath']'등 – jeroen

+0

덕분에 도움이되고 도움이되었습니다. . – StevoBot

0

당신은

$query_adSpot1 = "SELECT * FROM advertisements WHERE adPlacement = 1 ORDER BY RAND() LIMIT 1"; 
$result = mysql_query($query_adSpot1, $server) or die(mysql_error()); 
$row = mysql_fetch_array($result); 
echo $row['filePath']; 
echo $row['adName']; 
echo $row['adLink']; 
관련 문제