Von_Reibnitz Postado Agosto 6, 2010 Denunciar Share Postado Agosto 6, 2010 Olá, possuo este código de uma página que exibe as notícias:exibe2.php<? $variables=(strtolower($_SERVER['REQUEST_METHOD'])== 'GET') ? $_GET : $_POST; foreach ($variables as $k=> $v) $$k=$v; $tabela1 = "noticias"; $tabela2 = "users"; $tabela3 = "cidades"; $file = "$tabela1"; // INICIO DA ACAO DE EXIBIR if($acao == "ver"){ $busca = "SELECT * FROM $tabela1 WHERE id='$id'"; $sql = mysql_query($busca); $dados = mysql_fetch_array($sql); $data1 = strftime("%d/%m/%Y às %Hh%Mmin", strtotime($dados[data])); $data2 = strftime("%d/%m/%Y às %Hh%Mmin", strtotime($dados[data2])); $data = "$data1 - Atualizada em $data2"; //$sql2 = "SELECT * FROM $tabela2 WHERE id='$dados[id_user]'"; $sql2 = "SELECT * FROM $tabela2 WHERE id='$dados[id_user]'"; $sql2 = mysql_query($sql2); $dados2 = mysql_fetch_array($sql2); $sql3 = "SELECT * FROM $tabela3 WHERE id='$dados2[id_cidade]'"; $sql3 = mysql_query($sql3); $dados3 = mysql_fetch_array($sql3); ?> <script>var fontSize = <?=$tfonte?>;</script> <table width='100%' border='0' cellpadding='2' cellspacing="0"> <tr> <td style="border-bottom:1px solid <?=$corcelula2?>;"><?=$data?></td> </tr> <tr><td style="border-bottom:1px solid <?=$corcelula2?>;"><table width="100%" border="0" cellpadding="0" cellspacing="1"> <tr> <td width="4%"><a href="mailto:<?=$dados2[email]?>"><img src="images/layout/icone_email.gif" border="0"></a></td> <td width="61%"><?="<b>$dados2[nome]</b> - $dados3[nome]($dados3[estado])";?></td> <td width="35%" align="right"><table border="0" cellspacing="0" cellpadding="0"> <tr> <td align="right" class="pequeno"> TAMANHO DA FONTE</td> <td width="3"></td> <td width="16" height="16" align="center" valign="middle" bgcolor="<?=$corcelula2?>" style="border:1px solid <?=$corcelula1?>;"><A href="java script:diminuir('mudaFonte')"><B>A-</B></A></td> <td width="3"></td> <td width="16" height="16" align="center" valign="middle" bgcolor="<?=$corcelula2?>" style="border:1px solid <?=$corcelula1?>;"><A href="java script:aumentar('mudaFonte')"><B>A+</B></A></td> </tr> </table></td> </tr> </table></td> </tr> <tr> <td class="titulosG coresportes"><? echo nl2br ($dados['titulo']);?></td> </tr> <? if($dados[subtitulo] != ""){?> <tr> <td><B><i><? echo $dados['subtitulo']?></i></B></td> </tr> <? }?> <tr> <td valign="top"> <br /> <div id="mudaFonte"> <? //$alinhara = ($dados[alinhamento_foto]=="R")?"right":"left"; $larguraG = ($dados[largura_foto]=="")?"250":"$dados[largura_foto]"; $alturaG = ($dados[altura_foto]=="")?"h=":"h=$dados[altura_foto]"; echo "<a href='thumbs.php?w=$LarguraFoto&imagem=images/$tabela1/$dados[id]/$dados[foto]' rel='lightbox' title='$dados[titulo]'>"; echo "<img src='thumbs.php?w=$larguraG&$alturaG&imagem=images/$tabela1/$dados[id]/$dados[foto]' align='center' border='0'>"; echo "</a>"; $texto1 = "$dados[texto]"; $texto2 = str_replace('<font face="Verdana" size="2">', "", "$texto1"); $texto3 = str_replace('</font>', "", "$texto2"); echo nl2br($texto3); echo "<br><br><i>$dados[creditos_fotos]</i>"; ?> </div> <br /> </td> </tr> </table> <br /> <? // INICIO DOS BOTOES IMPRIMIR, INDICAR if(empty($imprimir)){ include "estrutura/imprimir.php"; } // FIM DOS BOTOES IMPRIMIR, INDICAR ?> <? } // FIM DA ACAO DE EXIBIR ?> <? if($acao == "ultimas"){ $busca = "SELECT * FROM $tabela2 WHERE status = 'S' AND noticias!='' ORDER by rand() LIMIT $limite"; //echo $busca; $sql = mysql_query($busca); //echo $sql; $total = mysql_num_rows($sql); //echo $total; if($total > 0){ ?> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr><td height="4"></td></tr> <? while($dados = mysql_fetch_array($sql)){?> <tr> <td align="right"> <table border="0" cellspacing="0" cellpadding="0"> <tr> <td align="right"> <? $busca2 = "SELECT * FROM $tabela1 WHERE id_cat REGEXP '$dados[noticias]' ORDER BY data desc"; //echo $busca2; $sql2 = mysql_query($busca2); //echo $sql2; $dados2 = mysql_fetch_array($sql2); echo "<a href='?pg=$link_page&id=$dados2[id]'>"; echo "<font class='laranja'><b>$dados[nome]</b></font><br />"; $contatamanho = strlen($dados2[titulo]); if($contatamanho > $qt_letras){ $titulo = substr_replace($dados2[titulo], "...", $qt_letras, $contatamanho - $qt_letras); } else { $titulo = "$dados2[titulo]"; } echo $titulo; echo "</a>"; ?> </td> <td width="55" align="right"><img src="thumbs.php?w=<?=$largura?>&h=<?=$altura?>&imagem=images/users/<?=$dados[foto]?>"></td> </tr> </table> </td> </tr> <tr><td height="5"></td></tr> <? }?> </table> <? } else {?> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td>nenhum <b>registro</b> encontrado!</td> </tr> </table> <? }?> <? }?> <? // INICIO DA ACAO DE FOTOS EXTRAS if($fotos == "S"){ if($dados[fotos_extras] == "S"){ echo "<br>"; $wh1 = "WHERE id = '$id'"; $busca = "SELECT * FROM $tabela1 $wh1 ORDER BY data desc"; //echo "$busca<br>"; $sql = mysql_query($busca); $total = mysql_num_rows($sql); $dados = mysql_fetch_array($sql); $dir = "images/$tabela1/$id/"; //echo $dir; $dirhandle = opendir($dir); $fotos = array(); while ($file = readdir($dirhandle)) { $files = $file; $arr_basename=explode(".",$files); $file_type=strtolower("$arr_basename[1]"); //if ($file_type == "jpg"){ if($file_type == "jpg" && $file != "$dados[foto]"){ $fotos[] = $files; } } closedir($dirhandle); sort($fotos); for($i=0;$i<count($fotos);$i++){ // para exibir em ordem alfabética //for ($i=count($fotos);$i>0;$i--){ // para exibir em ordem alfabética inversa echo "<a href='thumbs.php?w=$LarguraFoto&imagem=$dir$fotos[$i]' rel='lightbox[roadtrip]'>"; echo "<img style='border:1px solid $corcelula1' onmouseover='makevisible(this,0)' onmouseout='makevisible(this,1)' src='thumbs.php?w=$largura&h=$altura&imagem=$dir$fotos[$i]' border='0' alt='$dados[descricao]' style='FILTER: alpha(opacity=100);'>"; echo "</a> "; } } echo "<br><br><br>"; } // FIM DA ACAO DE FOTOS EXTRAS ?> <? // INICIO DA ACAO DE OUTRAS if($outras == "S"){ $sql2 = "SELECT * FROM $tabela2 WHERE id='$id'"; $sql2 = mysql_query($sql2); $dados2 = mysql_fetch_array($sql2); if($acao == colunista){ $wh1 = "WHERE id_cat = '$dados2[noticias]'"; } else { $wh1 = "WHERE id = '$id'"; } $busca = "SELECT * FROM $tabela1 $wh1 ORDER BY data desc"; $sql = mysql_query($busca); $total = mysql_num_rows($sql); $dados = mysql_fetch_array($sql); if($total > 0){ $busca2 = "SELECT * FROM $tabela1 WHERE id_cat = '$dados[id_cat]' ORDER BY data desc LIMIT 10"; //echo $busca2; $sql2 = mysql_query($busca2); //echo $sql2; ?> <br /> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="22" bgcolor="#336633" class="titulos2 branco"> OUTRAS NOTÍCIAS</td> </tr> <tr><td height="5"></td></tr> </table> <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr><td height="4"></td></tr> <? while($dados2 = mysql_fetch_array($sql2)){?> <tr> <td> <? $data = strftime("%d/%m/%Y", strtotime($dados2[data])); echo "<a href='?pg=$link_page&id=$dados2[id]'>"; echo "$data - <font class='coresportes'><b>$dados2[titulo]</b></font>"; echo "</a>"; ?> </td> </tr> <tr><td height="1" bgcolor="<?=$corcelula2?>"></td></tr> <tr><td height="5"></td></tr> <? }?> </table> <? } else {?> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td>nenhuma <b><?=$palavra?></b> encontrada!</td> </tr> </table> <? }?> <? } // FIM DA ACAO DE OUTRAS // INICIO DA ACAO VER ULTIMAS if($acao == "ultimas_noticia"){ $dataHoje = date("Y-m-d H:i:s"); $wh1 = "AND data < '$dataHoje'"; //echo $wh1; if(!empty($idcat)){ $wh2 = "AND id_cat = '$idcat'"; } if(!empty($limite2)){ $limite2 = "LIMIT $limite2"; } $busca = "SELECT * FROM $tabela1 WHERE status='S' $wh1 $wh2 $ordem"; //echo $busca; if($paginacao == "S"){ $total_reg = $qts_ultimos; if(!$page){ $page = "1"; } $inicio = $page-1; $inicio = $inicio*$total_reg; $limite = mysql_query("$busca LIMIT $inicio,$total_reg"); } else { $limite = mysql_query("$busca $limite2"); } $todos = mysql_query("$busca"); $tr = mysql_num_rows($todos); $tp = @ceil($tr / $total_reg); if($tr > 0){ ?> <table border="0" cellpadding="1" cellspacing="0"> <? // Agora vamos montar o código. Pegue o valor total de resultados: $total = mysql_num_rows($limite); // Defina o número de colunas que você deseja exibir: //$colunas = "3"; //$colunas = "$qts_colunas"; // Agora vamos ao "truque": if ($total>0) { for ($i = 0; $i < $total; $i++) { if (($i%$colunas)==0) { $colspan = $colunas+$colunas+$colunas; ?> <tr> <? }?> <? $dados = mysql_fetch_array($limite); ?> <td align="center" valign="top"><table border="0" cellpadding="0" cellspacing="0"> <tr><td height="5"></td> <tr> <td width="<?=$largura_coluna?>" align="right" valign="middle"><table width="100%" border="0" align="left" cellpadding="0" cellspacing="0"> <tr> <? if(!empty($dados[foto])){?> <td width="<?=$largura+5;?>" height="<?=$altura+8;?>" align="left" valign="middle"> <table border="0" cellpadding="1" cellspacing="0" bgcolor="<?=$corcelula1?>"> <tr> <td><table border="0" cellspacing="0" cellpadding="3"> <tr> <td bgcolor="#FFFFFF"><a href='<?="?pg=$link_page&id=$dados[id]";?>'><img src="<?="thumbs.php?w=$largura&h=$altura&imagem=images/$tabela1/$dados[id]/$dados[foto]";?>" width="<?=$largura?>" height="<?=$altura?>" border="0" style="FILTER: alpha(opacity=100);" onMouseOver="makevisible(this,0)" onMouseOut="makevisible(this,1)"></a></td> </tr> </table></td> </tr> </table></td> <? }?> <td align="right" valign="middle"> <table width="100%" border="0" cellpadding="1" cellspacing="0"> <tr><td bgcolor="<?=$corcelula2?>"> <? $dados2 = mysql_fetch_array(mysql_query("SELECT * FROM noticias_cat WHERE id='$dados[id_cat]'")); echo "<font class='titulos coresportes'><b>$dados2[nome]</b></font>"; ?></td> </tr> <tr> <td height="3"></td> </tr> </table> <table width="98%" border="0" cellpadding="0" cellspacing="0"> <tr> <td><? echo "<a href='?pg=$link_page&id=$dados[id]'>"; echo strftime("%d de %B de %Y", strtotime($dados[data]))."<br>"; $contatamanho1 = strlen($dados[titulo]); if($contatamanho1 > $qt_letras1){ $titulo = substr_replace($dados[titulo], "...", $qt_letras1, $contatamanho1 - $qt_letras1); } else { $titulo = $dados[titulo]; } $contatamanho2 = strlen($dados[subtitulo]); if($contatamanho2 > $qt_letras2){ $subtitulo = substr_replace($dados[subtitulo], "...", $qt_letras2, $contatamanho2 - $qt_letras2); } else { $subtitulo = $dados[subtitulo]; } echo "<font class='titulosG coresportes'><b>$titulo</b></font><br>"; echo "$subtitulo<br>"; echo "</a>"; ?></td> </tr> </table> </td> </tr> </table></td> </tr> <tr><td colspan="4" align="right" height="3"></td> </tr> <tr> <td height="5" colspan="4"></td> </tr> </table></td> <? }?> </TR> <? }?> </table> <? // INICIO DA PAGINAÇÃO if($paginacao == "S"){ include "estrutura/paginacao.php"; } // FIM DA PAGINAÇÃO ?> <? } else {?> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td align="center"><br /> nenhum <b>registro</b><b> </b>encontrado!<br /> <br /> </td> </tr> </table> <? } // FIM DO ELSE } // FIM DA ACAO VER ULTIMAS // INICIO DA ACAO VER ULTIMAS 3 if($acao == "ultimas_noticias"){ $dataHoje = date("Y-m-d H:i:s"); $wh1 = "AND data < '$dataHoje'"; // echo $wh1; if(!empty($idcat)){ $wh2 = "AND id_cat = '$idcat'"; } if(!empty($limite2)){ $limite3 = "LIMIT $limite2"; } $busca = "SELECT * FROM $tabela1 WHERE status='S' $wh1 $wh2 $ordem"; //echo $busca; if($paginacao == "S"){ $total_reg = $qts_ultimos; if(!$page){ $page = "1"; } $inicio = $page-1; $inicio = $inicio*$total_reg; $limite = mysql_query("$busca LIMIT $inicio,$total_reg"); } else { $limite = mysql_query("$busca $limite3"); } $todos = mysql_query("$busca"); $tr = mysql_num_rows($todos); $tp = @ceil($tr / $total_reg); if($tr > 0){ ?> <table border="0" cellpadding="1" cellspacing="0"> <? // Agora vamos montar o código. Pegue o valor total de resultados: $total = mysql_num_rows($limite); // Defina o número de colunas que você deseja exibir: //$colunas = "3"; //$colunas = "$qts_colunas"; // Agora vamos ao "truque": if ($total>0) { for ($i = 0; $i < $total; $i++) { if (($i%$colunas)==0) { $colspan = $colunas+$colunas+$colunas; ?> <tr> <? }?> <? $dados = mysql_fetch_array($limite); ?> <td align="center" valign="top"><table border="0" cellpadding="0" cellspacing="0"> <tr> <td width="<?=$largura_coluna?>" align="right" valign="middle"><table width="100%" border="0" align="left" cellpadding="0" cellspacing="0"> <tr> <? if(!empty($dados[foto])){?> <td width="<?=$largura+5;?>" height="<?=$altura+8;?>" align="left" valign="middle"> <table border="0" cellpadding="1" cellspacing="0" bgcolor="<?=$Cor1?>"> <tr> <td><table border="0" cellspacing="0" cellpadding="3"> <tr> <td bgcolor="#FFFFFF"><a href='<?="?pg=$link_page&id=$dados[id]";?>'><img src="<?="thumbs.php?w=$largura&h=$altura&imagem=images/$tabela1/$dados[id]/$dados[foto]";?>" width="<?=$largura?>" height="<?=$altura?>" border="0" style="FILTER: alpha(opacity=100);" onMouseOver="makevisible(this,0)" onMouseOut="makevisible(this,1)"></a></td> </tr> </table></td> </tr> </table></td> <? }?> <td align="right" valign="middle"> <? if($exibir_cat=="S"){?><table width="100%" border="0" cellpadding="1" cellspacing="0"> <tr><td bgcolor="<?=$corcelula2?>"> <? $dados2 = mysql_fetch_array(mysql_query("SELECT * FROM noticias_cat WHERE id='$dados[id_cat]'")); echo "<font class='titulos coresportes'><b>$dados2[nome]</b></font>"; ?></td> </tr> <tr> <td height="3"></td> </tr> </table><? }?> <table width="99%" border="0" cellpadding="0" cellspacing="0"> <tr> <td><? echo "<a href='?pg=$link_page&id=$dados[id]'>"; echo strftime("%d de %B de %Y", strtotime($dados[data]))."<br>"; $contatamanho1 = strlen($dados[titulo]); if($contatamanho1 > $qt_letras1){ $titulo = substr_replace($dados[titulo], "...", $qt_letras1, $contatamanho1 - $qt_letras1); } else { $titulo = $dados[titulo]; } $contatamanho2 = strlen($dados[subtitulo]); if($contatamanho2 > $qt_letras2){ $subtitulo = substr_replace($dados[subtitulo], "...", $qt_letras2, $contatamanho2 - $qt_letras2); } else { $subtitulo = $dados[subtitulo]; } echo "<font class='titulos coresportes'><b>$titulo</b></font><br>"; echo "$subtitulo<br>"; echo "</a>"; ?></td> </tr> </table> </td> </tr> <tr><td height="7"></td></tr> <tr><td height="1" colspan="<?=$colspan?>" bgcolor="<?=$corcelula2?>"></td></tr> <tr><td height="5"></td></tr> </table></td> </tr> </table></td> <? }?> </TR> <? }?> </table> <? // INICIO DA PAGINAÇÃO if($paginacao == "S"){ include "estrutura/paginacao.php"; } // FIM DA PAGINAÇÃO ?> <? } else {?> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td align="center"><br /> nenhum <b>registro</b><b> </b>encontrado!<br /> <br /> </td> </tr> </table> <? } // FIM DO ELSE } // FIM DA ACAO VER ULTIMAS 3 ?>Gostaria de inserir uma opção ali que ao ler uma notícia seja marcada no banco de dados a sua leitura, com o intuito de mostrar as mais lidas do portal. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Von_Reibnitz Postado Agosto 6, 2010 Autor Denunciar Share Postado Agosto 6, 2010 e estrutura do banco é assim:-- -- Estrutura da tabela `noticias` -- CREATE TABLE IF NOT EXISTS `noticias` ( `id` int(5) NOT NULL auto_increment, `id_user` varchar(5) NOT NULL default '4', `id_cat` char(3) NOT NULL default '', `data` datetime NOT NULL default '0000-00-00 00:00:00', `data2` datetime NOT NULL default '0000-00-00 00:00:00', `titulo` text NOT NULL, `subtitulo` text, `texto` text NOT NULL, `foto` varchar(255) default NULL, `fotos_extras` enum('S','N') NOT NULL default 'N', `creditos_fotos` varchar(255) NOT NULL default '', `alinhamento_foto` enum('L','R') NOT NULL default 'L', `largura_foto` char(3) NOT NULL default '250', `altura_foto` char(3) NOT NULL default '', `status` enum('S','N') NOT NULL default 'S', `cont` bigint(20) NOT NULL default '0', PRIMARY KEY (`id`), UNIQUE KEY `id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=630; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Agosto 6, 2010 Denunciar Share Postado Agosto 6, 2010 Coloca uma coluna na tabela das notícias que guarde a quantidade de visitar, para atualizar....UPDATE tabela SET campo = campo+1 WHERE id = '$id' Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Von_Reibnitz Postado Agosto 6, 2010 Autor Denunciar Share Postado Agosto 6, 2010 fiz assim:<? // INICIO DO UPDATE $query3="UPDATE `$tabela1` SET cont=$cont+1 WHERE id = '$id'"; $result3=mysql_query($query3) or die("<div align='center' class='legendamenor'>Erro, tente novamente</a>"); // FIM DO UPDATE ?> mas esta contando apenas 1 acesso, quando atualizo a página permanece a contagem. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Von_Reibnitz Postado Agosto 6, 2010 Autor Denunciar Share Postado Agosto 6, 2010 olá, já corrigí, ficou assim:<? // INICIO DO UPDATE $query3="UPDATE `$tabela1` SET cont = cont+1 WHERE id = '$id'"; $result3=mysql_query($query3) or die("<div align='center' class='legendamenor'>Erro, tente novamente</a>"); // FIM DO UPDATE ?>agradeço a atenção. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Von_Reibnitz
Olá, possuo este código de uma página que exibe as notícias:
exibe2.php
Gostaria de inserir uma opção ali que ao ler uma notícia seja marcada no banco de dados a sua leitura, com o intuito de mostrar as mais lidas do portal.
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.