Arranjei um sistema de mural simples. Ele tem paginação, que posso limitar (digamos 10 por página), mas os números vão aparecendo em uma linha horizontal infinitamente "alargando" a página.
Fiz um monte de pesquisas sobre paginação, tentei mudar mas não consegui.
Eis o código inteiro:
<?
$pg1=$_GET[pg1];
$page1=$_GET[page1];
$busca = "SELECT * FROM mural WHERE id_franquia='$cidade' AND status='S' order by id desc";
// termina a função para buscar a categoria
$total_reg = "11";
if(!$page1){
$page1 = "1";
}
$inicio = $page1-1;
$inicio = $inicio*$total_reg;
$limite = mysql_query("$busca LIMIT $inicio,$total_reg");
$todos = mysql_query("$busca");
$tr = mysql_num_rows($todos);
$tp = ceil($tr / $total_reg);
if(mysql_num_rows($todos)>0){
// if (($todos%2)==0) { $bgcolor="#FFFFFF"; } else { $bgcolor="#C0C0C0"; }
?>
<style type="text/css">
<!--
.style11 {
color: #FFFFFF;
font-weight: bold;
}
-->
</style>
<table align="center" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" width="100%" valign="top"><div align="center">
<table align="center" width="720" height="100%" border="0" cellpadding="3" cellspacing="0">
<tr>
<td colspan="3" align="center" valign="top">
<table align="center" width="100%" cellpadding="0" cellspacing="0">
<tr><td height="1" colspan="5"></td></tr>
<TR>
<TD align="right">Recados: <strong><? echo "<b><font color=$coronmouse>$tr</font></b>";?></strong>
</TD>
</TR>
<tr><td height="1" colspan="3"></td></tr>
</table>
<table align="center" width="100%" border=0 cellpadding=2 cellspacing=0>
<? while ($dados=mysql_fetch_array($limite)) {?>
<tr align="center" bgcolor="#FFFFFF">
<td colspan="3" align="left">
<font size="2" color="#000000">De:</font> <b><font size="2" color="red"><? echo $dados[de]?></font></b>
<font size="2" color="#000000">Para:</font> <b><font size="2" color="red"><? echo $dados[para]?></font></b>
<fieldset><legend><span class="legenda"><font color="#000000">Mensagem:</font></span></legend>
<font size="2" color="#000000"><?
$msg2 = $dados["mensagem"];
$str = split(" ",$msg2);
$msg = "";
for ($i=0;$i<count($str);$i++)
{
$tam = strlen($str[$i]);
//echo "<br><Br>Palavra $str[$i]<Br>Tam <b>$tam</b><br><br>";
$ini = 0;
if ($tam>25)
{
$espacos = intval(strlen($str[$i]) / 25);
//echo "<br>Inserir $espacos espacos na palavra";
for ($y=0;$y<$espacos;$y++)
{
$ini = $y*25;
$fim = 25;
$esp = substr($str[$i],$ini,$fim) ." ";
//echo "<Br>Inserindo espaco $y ($ini,$fim) [$esp]";
$msg .= $esp;
$ini = ($y+1)*25;
}
}
$esp = substr($str[$i],$ini,strlen($str[$i])) ." ";
//echo "<Br>Inserindo restante $esp";
$msg .= $esp;
}
echo nl2br($msg);
?></font>
</fieldset>
</td>
</tr>
<tr>
<td colspan="4"><div align="right">
<i>Data:
<?
$var = $dados['data'];
$var = explode(" ",$var);
$dia = $var[0];
$hora = $var[1];
$dia = explode("-",$dia);
$data = "$dia[2]/$dia[1]/$dia[0] às $hora";
echo "$data";
?>
</i></div></td>
</tr>
<? }?>
<tr><TD>
<table border="0" align="center" cellpadding="0" cellspacing="0">
<TR>
<TD width="100" align="right" valign="top">
<?
if($page > 1){
$anterior = $page -1;
$url = "?pg=$pg&page=$anterior";
echo "<a href='$url'>« Anterior</a> |";
} else {
echo "<font color='white'>« Anterior</font> |";
}
?>
</TD>
<TD align="center">
<?
for($x=1; $x<=$tp; $x++){
$url = "?pg=$pg&page=$x";
if ($x==$page) {
echo "<font color='red'><b>$x</b></font>|";
} else {
echo "<a href='$url'>$x</a>|";
}
}
?>
</TD>
<TD width="100" align="left" valign="top">
<?
if($tp > $page){
$proxima = $page +1;
$url = "?pg=$pg&page=$proxima";
echo " <a href='$url'>Próxima »</a>";
} else {
echo " <font color='white'>Próxima »</font>";
}
?>
</TD>
</TR>
</table>
</TD></tr>
</table>
</td>
</tr>
</table>
</div></td>
</tr>
</table>
<? } else {?>
<table width="338" cellpadding="0" cellspacing="0">
<TR>
<TD align="center" valign="bottom">
<br>
Desculpe-nos, no momento não temos nenhum Recado<br>
cadastrado em nosso banco de dados!<br>
<br> </td>
</tr>
</table>
<table width="338" cellpadding="0" cellspacing="0">
<TR>
<TD align="center" valign="bottom">
<a href="?pg=principal">
<h3>Deixe seu Recado!</h3>
</a>
</td>
</tr>
</table>
<? } ?>
Aqui a parte inicial do código:
<?
$pg1=$_GET[pg1];
$page1=$_GET[page1];
$busca = "SELECT * FROM mural WHERE id_franquia='$cidade' AND status='S' order by id desc";
// termina a função para buscar a categoria
$total_reg = "11";
if(!$page1){
$page1 = "1";
}
$inicio = $page1-1;
$inicio = $inicio*$total_reg;
$limite = mysql_query("$busca LIMIT $inicio,$total_reg");
$todos = mysql_query("$busca");
$tr = mysql_num_rows($todos);
$tp = ceil($tr / $total_reg);
if(mysql_num_rows($todos)>0){
// if (($todos%2)==0) { $bgcolor="#FFFFFF"; } else { $bgcolor="#C0C0C0"; }
?>
Aqui onde pagina:
<?
if($page > 1){
$anterior = $page -1;
$url = "?pg=$pg&page=$anterior";
echo "<a href='$url'>« Anterior</a> |";
} else {
echo "<font color='white'>« Anterior</font> |";
}
?>
<?
for($x=1; $x<=$tp; $x++){
$url = "?pg=$pg&page=$x";
if ($x==$page) {
echo "<font color='red'><b>$x</b></font>|";
} else {
echo "<a href='$url'>$x</a>|";
}
}
?>
<?
if($tp > $page){
$proxima = $page +1;
$url = "?pg=$pg&page=$proxima";
echo " <a href='$url'>Próxima »</a>";
} else {
echo " <font color='white'>Próxima »</font>";
}
?>
Tem como fazer alguma modificação dentro desse código para paginar corretamente?



Postagens
Male
