<mySnippets order="rand" ⁄>
<myContacts ⁄><email ⁄>
<windows live messenger ⁄>
<myCurriculum type="pdf" ⁄>
<myBlog show="last" ⁄>
<myNews show="rand" ⁄>
<myNews type="cat" ⁄>
<myQuote order="random" ⁄>
<myPhoto order="random" ⁄>
<myAdSense ⁄>
<myVisitorsMap ⁄>
/****** <layout> ******/ body{font-family: Tahoma, Verdana, Arial, sans-serif;font-size: 8pt;color: #000;} /****** <layout /> ******/ /****** <tabela> ******/ td.footer{background-color: #0080C0;color:#ffffff;font-weight:normal;text-align:center;} table.main_tbl{border: solid 1px #004080; padding: 1px; border-spacing: 1px; width:100%;} /****** <tabela /> ******/ /****** <paginacao> ******/ .pages{padding: 0;margin: auto auto auto 12px;} .pages a, .pages span{ display: block;margin: 1px; width:16px; height: 13px; float: left; padding: 0.2em 0.5em;border: 1px solid #666;background: #fff; } .pages span.current{background: #FF7F55;color: #fff;} .pages a{text-decoration: none;} .pages a:hover{background: #FF6600;color: #fff;} .pages a.current{background: #FF7F55;color: #fff;} .pages a.current:hover{color: #FFFF99;} /****** <paginacao /> ******/ /****** <misc> ******/ a{color: #FF5500;text-decoration: underline;} a:hover{color: #0080D5;text-decoration: none;} /****** <misc /> ******/
<?php //definições de ligação à bd define("DB_SERVER","my_server"); define("DB_USERNAME","my_username"); define("DB_PASSWORD","my_password"); define("DB_NAME","my_database"); define("TBL_DADOS","my_table"); //paginação define("PER_PAGE","20"); define("LNG_PAGINACAO_PAGINA","Página"); define("LNG_PAGINACAO_DE","de"); define("LNG_PAGINACAO_SELECIONADA","(selecionada)"); //gridview define("PAGINATION_CLASS_TABLE","main_tbl"); define("PAGINATION_CLASS_TD","footer"); define("PAGINATION_GENERIC_NAME","myPagination"); ?>
<?php include_once("settings.inc"); /** * Construir Paginação * * @param int $page * @param String $webpage * @param String $name_sufix * @return String */ function DoPagination($page="",$webpage="",$name_sufix=""){ $const=get_defined_constants(); $name="{$const['PAGINATION_GENERIC_NAME']}$name_sufix"; return DoPaginationTable($page,$const['TBL_DADOS'],$name,$_SERVER['PHP_SELF']); } /** * Construir linha com paginação * * @param Int $current_page_num * @param String $table * @param String $name_sufix * @param String $webpage * @param String $extraSQL * @param String $extraHref * @return String */ function DoPaginationTable($current_page_num,$table,$name_sufix="",$webpage="", $extraSQL="",$extraHref=""){ $const=get_defined_constants(); if(!$current_page_num || $current_page_num<0 || !is_numeric($current_page_num)){ $current_page_num=0; } else { $current_page_num--; } $iSQL="Select count(*) From `$table` $extraSQL"; $db=connectDB(); $sql=mysql_query($iSQL) or die(mysql_error()); $myrow=mysql_fetch_array($sql); mysql_close($db); $numRegs=$myrow[0]; if ($numRegs>$const['PER_PAGE']){ //caso o número de registos seja > perPage, constrói a barra, c.c., não $regSplit=$numRegs/$const['PER_PAGE']; if($numRegs%$const['PER_PAGE']>0) $regSplit++; $numPagesTotal=intval($regSplit); $paginationBar="<div class='pages'>"; for ($i=1;$i<=$regSplit;$i++){ $title="{$const['LNG_PAGINACAO_PAGINA']} $i {$const['LNG_PAGINACAO_DE']} $numPagesTotal"; if ($i==$current_page_num+1){ $title.=" {$const['LNG_PAGINACAO_SELECIONADA']}"; $paginationBar.=DoCustomHref("$webpage?page=$i&$extraHref",$i,$title,"current"); } else{ $paginationBar.=DoCustomHref("$webpage?page=$i&$extraHref",$i,$title); } } $paginationBar.="</div>"; } if($paginationBar) { //se existir construir tabela $row=DoTableRow("",DoTableCell("",$paginationBar,$const['PAGINATION_CLASS_TD'])); $tblPaginationBar=DoTable($row,$name_sufix,$const['PAGINATION_CLASS_TABLE']); } return $tblPaginationBar; } /** * Construir Tabela * * @param String $rows * @param String $id * @param String $tblClass * @return String */ function DoTable($rows,$id,$tblClass){ if($tblClass) $tblClass="class=\"$tblClass\""; return " <table $tblClass name='$id' id='$id'> $rows </table> "; } /** * Construir célula * * @param String $id * @param String $content * @param String $class * @return String */ function DoTableCell($id="", $content, $class="",$colspan=""){ if($class) $class=" class=\"$class\" "; if($colspan) $colspan=" colspan=\"$colspan\" "; if($$content) $content=" "; if($id) $id=" name=\"$id\" id=\"$id\" "; return "<td $id $class $colspan>$content</td>"; } /** * Construir linha * * @param String $id * @param String $td * @param String $class * @return String */ function DoTableRow($id="",$td,$class=""){ if($class) $class=" class=\"$class\" "; if($id) $id=" name=\"$id\" id=\"$id\" "; return "<tr $id $class>$td<tr>"; } /** * Construir href * * @param String $text * @param String $class * @return String */ function DoCustomHref($link,$text,$tooltip="",$class=""){ if($class) $class=" class=\"$class\" "; if(!$tooltip) $tooltip=$text; return "<a href='$link' title=\"$tooltip\" $class>$text</a>"; } /** * Ligação à bd * * @return */ function connectDB(){ $db = mysql_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD); mysql_select_db(DB_NAME,$db) or die("<b><br/>Impossivel aceder á base de dados.</b><br/>"); return $db; } ?>
<?php include_once("functions.php"); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt"> <head> <link rel="stylesheet" type="text/css" href="style.css" media="all" /> </head> <body> <?php echo DoPagination($_REQUEST["page"]); ?> </body> </html>
