답변 4개
채택된 답변
+20 포인트
2년 전
어떤 구조로 작업을 하셨는지는 잘 모르겠지만 다음과 같이 하면 되지 않을까 싶네요
예시
Copy
로그인 후 평가할 수 있습니다
답변에 대한 댓글 2개
�
2년 전
[code]
<?php
// 고정으로 출력할 특정 글의 wr_id
$fixedPostID = 123;
// 특정 글을 고정으로 출력하는 SQL 쿼리
$sql = "SELECT * FROM {$g5['write_table']} WHERE wr_id = '{$fixedPostID}'";
$sql .= " UNION ALL ";
$sql .= "SELECT * FROM {$g5['write_table']} WHERE wr_id != '{$fixedPostID}' ORDER BY RAND() LIMIT 10";
$posts = sql_query($sql);
while ($post = sql_fetch_array($posts)) {
echo "<h2>{$post['wr_subject']}</h2>";
echo "<p>{$post['wr_content']}</p>";
}
?>
[/code]
참고하셔서 본인의 사이트에 맞게 작업하시면 될 것 같습니다.
여분필드를 사용하신다면 UNION ALL 다음줄에 아래와 같이 수정 하시면 될것 같습니다.
[code]
$sql .= "SELECT * FROM {$g5['write_table']} WHERE wr_id != '{$fixedPostID}' AND wr_20 = 0 ORDER BY RAND() LIMIT 10";
[/code]
두 번째 쿼리 부분에 AND wr_20 = 0 조건을 추가하여 나머지 글 중 wr_20 필드 값이 0인 글을 선택하게되며, 이렇게 하면 특정 글은 wr_20 필드 값이 1인 경우에만 선택되고, 나머지 글은 wr_20 필드 값이 0인 경우에만 선택되게 됩니다.
<?php
// 고정으로 출력할 특정 글의 wr_id
$fixedPostID = 123;
// 특정 글을 고정으로 출력하는 SQL 쿼리
$sql = "SELECT * FROM {$g5['write_table']} WHERE wr_id = '{$fixedPostID}'";
$sql .= " UNION ALL ";
$sql .= "SELECT * FROM {$g5['write_table']} WHERE wr_id != '{$fixedPostID}' ORDER BY RAND() LIMIT 10";
$posts = sql_query($sql);
while ($post = sql_fetch_array($posts)) {
echo "<h2>{$post['wr_subject']}</h2>";
echo "<p>{$post['wr_content']}</p>";
}
?>
[/code]
참고하셔서 본인의 사이트에 맞게 작업하시면 될 것 같습니다.
여분필드를 사용하신다면 UNION ALL 다음줄에 아래와 같이 수정 하시면 될것 같습니다.
[code]
$sql .= "SELECT * FROM {$g5['write_table']} WHERE wr_id != '{$fixedPostID}' AND wr_20 = 0 ORDER BY RAND() LIMIT 10";
[/code]
두 번째 쿼리 부분에 AND wr_20 = 0 조건을 추가하여 나머지 글 중 wr_20 필드 값이 0인 글을 선택하게되며, 이렇게 하면 특정 글은 wr_20 필드 값이 1인 경우에만 선택되고, 나머지 글은 wr_20 필드 값이 0인 경우에만 선택되게 됩니다.
댓글을 작성하려면 로그인이 필요합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 2개
댓글을 작성하려면 로그인이 필요합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인