테스트 사이트 - 개발 중인 베타 버전입니다

Warning: Division by zero in 에러가 뜹니다 채택완료

대한사랑 2년 전 조회 1,410

0으로 나누어져서 그렇다는데 이렇게 저렇게 해봐도 답을 못찾겠네요

 

<select name="list_set" numeric itemname="목록수" style="border: 1px solid #c1c1c1;" onchange="location='./board.php?bo_table=<?=$bo_table?>&list_set='+this.value;">
            <option value="">전체목록</option>
            <option value="10" <?php if($list_set == "10") echo "selected"; ?>>10개</option>
            <option value="15" <?php if($list_set == "15") echo "selected"; ?>>15개</option>
            <option value="20" <?php if($list_set == "20") echo "selected"; ?>>20개</option>
            <option value="25" <?php if($list_set == "25") echo "selected"; ?>>25개</option>
            <option value="30" <?php if($list_set == "30") echo "selected"; ?>>30개</option>
            <option value="40" <?php if($list_set == "40") echo "selected"; ?>>40개</option>
            <option value="50" <?php if($list_set == "50") echo "selected"; ?>>50개</option>
            <option value="60" <?php if($list_set == "60") echo "selected"; ?>>60개</option>
        </select>

 

---------------------------- 중략------------------------------------

 

<?
$total_count = $xml->total;
$config[cf_write_pages] = 10;
$page = $_GET['page'];

if($page == null || $page == ' '){
   $page = 1;
}

$rows = $list_set;
$total_page = ceil($total_count / $rows);

$listm = $total_count-($rows*($page-1));
?>

<? 
// 반복되는 부분중에 그 특정내용 태그만 뽑아오기
foreach ($xml->wanted as $obj) {
$list[$i][wr_10] = $obj->company;   
$list[$i][subject] = $obj->title;
$ex2_filed[0] = $obj->region;
$list[$i][wr_26] = $obj->salTpNm;
$list[$i][wr_27] = $obj->minSal;
$date_ymd = $obj->closeDt;
?>

<?// 재정의 옵션인지 판단
$qstr2 = strip_tags($_SERVER['QUERY_STRING']); //XSS 방어
$write_pages = get_new_paging($config[cf_write_pages], $page, $total_page, "./board.php?".$qstr2."&page=");
?>

--------------------------------------------------------------------------

if 문으로 이렇게 저렇게 해보면 에러메시지는 사라지는데

목록수가 15개로 나오지 않고 10개 나오네요

게시판 설정에는 문제가 없습니다

 

고수님들 부탁드립니다

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
2년 전

</p>

<p><?

$total_count = $xml->total;

$config[cf_write_pages] = 10;

$page = $_GET['page'];</p>

<p>if($page == null || $page == ' '){

   $page = 1;

}</p>

<p>

switch($list_set){

    case "15" :

    case "20" :

    case "25" :

    case "30" :

    case "40" :

    case "50" :

    case "60" :

        $rows = $list_set;

    break;

    default:

        $rows = 10;

    break;

}</p>

<p>

$total_page = ceil($total_count / $rows);</p>

<p>$listm = $total_count-($rows*($page-1));

?></p>

<p><? 

// 반복되는 부분중에 그 특정내용 태그만 뽑아오기

foreach ($xml->wanted as $obj) {

$list[$i][wr_10] = $obj->company;   

$list[$i][subject] = $obj->title;

$ex2_filed[0] = $obj->region;

$list[$i][wr_26] = $obj->salTpNm;

$list[$i][wr_27] = $obj->minSal;

$date_ymd = $obj->closeDt;

?></p>

<p><?// 재정의 옵션인지 판단

$qstr2 = strip_tags($_SERVER['QUERY_STRING']); //XSS 방어

$write_pages = get_new_paging($config[cf_write_pages], $page, $total_page, "./board.php?".$qstr2."&page=");

?></p>

<p>

요렇게 switch로 rows 값을 정의해주시면 됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

대한사랑
2년 전
switch($list_set){
case "10" :
case "15" :
case "20" :
case "25" :
case "30" :
case "40" :
case "50" :
case "60" :
$rows = $list_set;
break;
default:
$rows = 15;
break;
}

디포트값을 15를 줬는데 10개만 출력되는 건 어디를 수정해야 할까요?
대한사랑
2년 전
쪽지로 해결해 주셔서 너무 고맙습니다

댓글을 작성하려면 로그인이 필요합니다.

플래토
2년 전

0 으로 나누어진다...

 ceil($total_count / $rows);

여기에 해당되겠네요

 

echo $list_set;

를 해보세요

아마도 null 혹으 아무값도 없을것같은데

 

값이 없을때 대체값 = 1 이라도 넣어야 오류가 없을것같네요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

대한사랑
2년 전
$list_set 대체값 = 1 을 어느 위치에 넣으면 되나요?

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인