혹시 뭐가 잘못되었는지 봐주실수 있나요?? > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

혹시 뭐가 잘못되었는지 봐주실수 있나요?? 정보

PHP 혹시 뭐가 잘못되었는지 봐주실수 있나요??

본문

$db=mysqli_connect("localhost","userlocal","userlocal","userlocal");
$block_per_page=5;  
$page_per_record=10;  


if(isset($page) < 1) {$page =1;} // page=0 버그 fix
else {$page= preg_replace("/[^0-9]*/s", "", $_REQUEST['page']);}


$sql_cnt="select * from user_details";
$sql_query=mysqli_query($db,$sql_cnt);
$total_record=mysqli_num_rows($sql_query);
$total_page=ceil($total_record/ $page_per_record); 
$total_block=ceil($total_page / $block_per_page); 
$now_block=ceil($page/$block_per_page); 
$start_record=intval(($page -1) * $page_per_record);
$start_page=intval(($now_block -1) * $block_per_page)+1; 
$end_page=intval($start_page + $block_per_page)-1;
if($end_page <= $total_page) {$end_page == $total_page;
}
else {$end_page=intval($start_page + $block_per_page)-1;}

$info_sql="select * from user_details limit $start_record, $page_per_record";
$info_result=mysqli_query($db,$info_sql);


while($info=mysqli_fetch_assoc($info_result)) {
$number=number_format(stripslashes($info['user_id']));

}
$next_page=intval($page)+1;
$prev_page=intval($page)-1;
echo "<div id=count_nav>";
if($page <=1  ) {}
if($page >=3) {echo " <a href=pages.php?page=1> 1 </a>";}


if($prev_page <= $total_page ) {
    if(($prev_page) >= 2 ||($prev_page) < 1) {}
    else {echo " <a href=pages.php?page=$prev_page> [prev] </a>";}
}
 if($total_page <= $page) {echo "<a href=pages.php?page=$total_page> [last] </a>";}
else {

for($i=$start_page;$i<=$end_page;$i++) {

echo "<a href=pages.php?page=$i> [ $i ] </a>";}

if(($next_page) <= ($page + $block_per_page)) {
    echo " <a href=pages.php?page=$next_page> [next] </a>";}

if($total_page >= $page ) {echo "<a href=pages.php?page=$total_page> [last] </a>";}

if($page > $total_page ) {
    echo "<a href=pages.php?page=1>1</a>";
    echo "<a href=pages.php?page=$total_page> [last] </a>";}

}

추천
1

댓글 2개

답이 없네요이것밖에는....

보는 사람마다 수정법을 이해하실날이 오겠지만....

찾은 방법은


@$page=$_REQUEST['page'];
if( !intval($page) || $page == false || $page == null)  { $page=1; }
else {$page=preg_replace('#[^0-9]#', '', $_REQUEST['page']);}

답이 없네요. 이것밖에.. ?로 끝내버려도 되고. page=0해도 정상적되고. 더 실력이 좋으신분께서 찾으셔서 쓰시면 좋겠네요... 페이징 사용권한.[EULA : 지지고 볶고 한들 맘대로하세요.]
전체 5,352
개발자팁 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT