2011-04-18 4 views
1

그 안에 그림이있는 MySQL 데이터베이스가 있습니다. 사용자가 내 페이지에 올 때 나는 그에게 무작위로 사진을 표시하려면 다음에서 그는임의의 행이지만 다음 및 이전 버튼이 있음

id | picture 
11 | foto1.gif 
12 | foto2.gif 
16 | foto3.gif 
23 | foto4.gif 
66 | foto5.gif 

어떻게 그런 일을 할 수 다음 또는 이전 사진 (랜덤되지 않음)

데이터베이스 예에 갈 수 PHP와 SQL? 고맙습니다!

+0

가능한 중복 (HTTP ://stackoverflow.com/questions/142242/what-is-the-best-way-to-pick-a-random-row-from-a-table-in-mysql) – Bobby

+0

중복되지 않습니다. 링크 된 질문에는 다음/이전 항목 검색에 대한 언급이 없습니다. – ThiefMaster

답변

2

검색어에 ORDER BY rand()을 사용하면 임의의 항목을 가져올 수 있습니다.

이 사용 (ID로) 이전/다음 항목을 검색하려면 [? MySQL은 테이블에서 임의의 행을 선택하는 가장 좋은 방법은 무엇]의

WHERE id < current_id ORDER BY id DESC LIMIT 1 (for prev) 
WHERE id > current_id ORDER BY id ASC LIMIT 1 (for next) 
+0

좋아요,하지만 클릭 할 수있는 링크로 다음 또는 이전 그림으로 이동하십시오. – Nathaniel

+0

쿼리 문자열에'go = next' 또는'go = prev' 같은 것을 추가 한 다음 PHP 코드에 적절한 WHERE 문을 작성하십시오. – ThiefMaster

+0

아하, 현재 표시되는 그림의 ID가 어쨌든 쿼리 문자열을 만들어야한다고 말하는 것없이 간다. –

관련 문제