Good Day I have a problem with the code below in that i am using a Variable that can only get declared lower down in the code, so offcorse i get the " Undefined variable: offset " is there a work around i just cant declare it higher up. [code]<?php class Pager { function getPagerData($numHits, $limit, $page) { $numHits = (int) $numHits; $limit = max((int) $limit, 1); $page = (int) $page; $numPages = ceil($numHits / $limit); $page = max($page, 1); $page = min($page, $numPages); $offset = ($page - 1) * $limit; $ret = new stdClass; $ret->offset = $offset; $ret->limit = $limit; $ret->numPages = $numPages; $ret->page = $page; return $ret; } } $isFirst = true; $result = ""; $selectbase = "select id , type , species , userid , name , description , largepic , country , province from pics"; if ( $type==""){ }else{ if ($isFirst){ $result = $result . " WHERE "; $isFirst = false; }else{ $result = $result . " AND "; } $result = "" . $result . " TYPE = '$type' "; } /* ======================================================================================================= */ if ( $country==""){ }else{ if ($isFirst){ $result = $result . " WHERE "; $isFirst = false; }else{ $result = $result . " AND "; } $result = "" . $result . " COUNTRY = '$country' "; } /* ======================================================================================================= */ if ( $specie==""){ }else{ if ($isFirst){ $result = $result . " WHERE "; $isFirst = false; }else{ $result = $result . " AND "; } $result = "" . $result . " SPECIES = '$specie' "; } /* ======================================================================================================= */ if ( $province==""){ }else{ if ($isFirst){ $result = $result . " WHERE "; $isFirst = false; }else{ $result = $result . " AND "; } $result = "" . $result . " PROVINCE = '$province' "; } $page = getRequestVariable("page"); $limit = 5; $tail = " order by id desc limit $offset, $limit "; $fullquery = $selectbase . $result . $tail; $fresult = mysql_query( "$fullquery"); $total = mysql_result($fresult, 0, 0); $pager = Pager::getPagerData($total, $limit, $page); $offset = $pager->offset; $limit = $pager->limit; $page = $pager->page; for ($i=0; $i < (mysql_num_rows($fresult)); $i++) { $thisrow = mysql_fetch_row($fresult); ?> [/code]