Jump to content


Photo

Sist. De Colunas


  • Faça o login para participar
10 replies to this topic

#1 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 17/12/2004, 11:08

Ae galera..!
Desta vez fiz um script de colunas...
É muitos pediram.. mas ae está o básico..

Se vocês quiserem implementarem está ae o "código base"...
hehehe..

Eu fiz somente a parte de exibir o conteudo que está
armazenado na tabela, ou seja, falta a parte da administração.

Que farei logo.. ;)

Tabelas:

CREATE TABLE /*!32300 IF NOT EXISTS*/ categorias (
  id bigint(20) NOT NULL auto_increment,
  nome varchar(30) NOT NULL DEFAULT '' ,
  PRIMARY KEY (id)
);

CREATE TABLE /*!32300 IF NOT EXISTS*/ conteudo (
  id bigint(20) NOT NULL auto_increment,
  id_cat bigint(20) NOT NULL DEFAULT '0' ,
  titulo varchar(120) NOT NULL DEFAULT '' ,
  texto longtext NOT NULL DEFAULT '' ,
  data datetime NOT NULL DEFAULT '0000-00-00 00:00:00' ,
  postador varchar(120) ,
  PRIMARY KEY (id)
);


Único arquivo que faz o papel de:
• Exibe todas as categorias cadastradas
• Exibe as matérias das categorias
• Exibe o conteúdo de uma matéria

<?
/* Desenvolvido por: Felipe Nascimento
* Para todos que querem aprender...
*/

//Conectando ao mysql
mysql_connect("localhost", "root", "") or die (mysql_error());
//Selecionando o Banco de dados a ser trabalhado
mysql_select_db("Colunas");


class Colunas
{   function ListarCat()
    {   //Pegando ID's e nome's na tabela categorias em ordem alfabética
    $ListarCat = mysql_query("SELECT id, nome FROM categorias ORDER BY nome ASC")
        or die (mysql_error());
        //se for encontrado conteudo na tabela referente a consulta...
      if (mysql_num_rows($ListarCat)>0):
        echo '<h3>Colunas:</h3>';
        //listando o nomes das colunas com um link para visualizar
        //as matérias referentes a elas
         while ($RCat=mysql_fetch_array($ListarCat)):
            echo '<a href="?coluna='.$RCat['id'].'">'.$RCat['nome'].'</a><br />';
         endwhile;
      //se não for encontrado informações na consulta
      else :
        echo 'Não há colunas!';
      endif;
    }

    function Coluna($coluna)
    {   //Pegando todas as informações na tabela conteudo aonde o id_cat é igual o da url
    $CCat = mysql_query("SELECT * FROM conteudo WHERE id_cat='$coluna' ORDER BY data DESC")
            or die (mysql_error());
            //se for encontrado informações na consulta...
        if (mysql_num_rows($CCat)>0):
            //pegando o nome da coluna através do id que está na url
            $Cn = mysql_query("SELECT nome FROM categorias WHERE id='$coluna'")
                or die (mysql_error());
                $RCn = mysql_fetch_array($Cn);
                echo '<h3>'.$RCn['nome'].'</h3>';
            //listando as matérias referente ao id da coluna encontrados na url
            //?coluna=ID
            while ($RCCat=mysql_fetch_array($CCat)):
                echo '<a href="?coluna='.$RCCat['id_cat'].'&ver='.$RCCat['id'].'">'.$RCCat['titulo'].'</a><br />';
            endwhile;
        //se não houver informaçõs na tabela com o id da url...
        else :
            echo 'Não há matérias nesta coluna!';
        endif;
    }
    function Visualizar($id)
    {   //Pegando na tabela todas a informações da tabela e passando data e hora para o formato brasileiro
        //aonde o id da materia é igual o da url
        //?coluna=ID DA COLUNA&ver=ID DA MATERIA
    $Conteudo = mysql_query("SELECT *, date_format(data, '%d-%m-%y as %H:%i:%s') as date FROM conteudo WHERE id='$id'")
            or die (mysql_error());
        //se encontrar informaçoes na consulta...
        if (mysql_num_rows($Conteudo)):
            //exibindo as informaçoes obtidas atraves do ID
            while ($Rcont=mysql_fetch_array($Conteudo)):
                echo '<a href="?coluna='.$Rcont['id_cat'].'">« voltar</a><br />
                Por: '.$Rcont['postador'].' - '.$Rcont['date'].'<br />
                Título: '.$Rcont['titulo'].'<hr>
                '.nl2br($Rcont['texto']);
            endwhile;
        //se não encontrar informações através do ID da matéria...
        else :
            echo 'Matéria não encontrada!';
        endif;
    }
}

//Ativando a classe
$Coluna = new Colunas;

//informações da urls
$coluna = @$_GET['coluna'];
$ver = @$_GET['ver'];

//se não houver valor para $ver e $coluna
//exemplos:
// http://www.site.com.br/?coluna=&ver=
// http://www.site.com.br/
if ( (trim($ver)=="") && (trim($coluna=="")) ):
    $Coluna->ListarCat();
    
//se houver valor somente para a variavel coluna
//exemplo:
// http://www.site.com.br/?coluna=ID da coluna
elseif ( (trim($ver)=="") && (trim($coluna!="")) ):
    $Coluna->Coluna($coluna);

//Se não for nenhum dos casos
// exemplo:
// http://www.site.com.br/?coluna=ID da coluna&ver=ID da materia
else :
    $Coluna->Visualizar($ver);
endif;
?>


Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#2 Existence

Existence

    Normal

  • Visitantes
  • PipPip
  • 82 posts
  • Sexo:Não informado

Posted 17/12/2004, 12:56

muito bom, valeu ai, vai ajudar bastante a galera...
já to tentando fazer o meu.
Existence Webstudio
Aqui é o seu lugar, exista!


→ Antes de postar, use a busca-> <- Link para a busca ->
→ Para não cometer erros, leia as regras do fórum

→ Mais info sobre eu ←
Nome: Juliano Tavares
E-mail: juliano@existence.com.br
Conhecimentos: Photoshop, Macromedia Studio, PHP/MySql
→ Colunista Photoshop - DevBrasil - acesse já!

#3 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 17/12/2004, 13:27

Isso ae..
A parte da administração talvez eu poste amanhã!

(y)
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#4 Marcelolm

Marcelolm

    Normal

  • Usuários
  • 79 posts
  • Sexo:Masculino
  • Localidade:Presidente Prudente-SP

Posted 20/12/2004, 07:54

Maneiro, só está faltando a administração, não vai postar?

#5 infonet

infonet

    Turista

  • Usuários
  • 57 posts
  • Sexo:Não informado

Posted 20/12/2004, 08:13

coloque a parte ADMIN pra gente

Abraços
Você procura Hospedagem para seu site ?

Visite a http://www.hostall.com.br

Domínios por R$ 35,90/ano

com painel de controle proprío

#6 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 21/12/2004, 19:00

Calma povo..

Logo estará ae... :)
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#7 tiago_tico

tiago_tico

    24 Horas

  • Usuários
  • 443 posts
  • Sexo:Não informado

Posted 22/12/2004, 02:59

Olá, como faço para mostrar as materias mais acessadas?

#8 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 22/12/2004, 03:02

Tem que criar um campo na tabela para armazenar os "views" (visualizações).
Daí terá que colocar um pequeno código apenas.. :)

Pode deixar.. eu vou modificar..
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#9 thim

thim

    People are strange, when you're a stranger

  • Usuários
  • 213 posts
  • Sexo:Masculino
  • Localidade:Itap da serra-sp
  • Interesses:Ganhar muito dinheiro com pouco esforço, hahuauhahu

Posted 26/05/2005, 22:52

Ae Justice, esqueceu???

hehehhehe

FLou

#10 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 27/05/2005, 00:17

Esqueci não..
Desisti mesmo...

Seria muita coisa...

Então deixo essa missão para vocês..

Pois se inserirem os dados certos na tabela a classe funcionará e exibirá tudo certinho..

Eu já cheguei a testar com os dados adicionados manualmente no bd.
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#11 betolong

betolong

    HostPlay.com.br

  • Banidos
  • PipPipPip
  • 239 posts
  • Sexo:Masculino
  • Localidade:Ciríaco - RS

Posted 04/09/2005, 10:47

Eu vo faze a adiminstração e posta.
http://www.hostplay.com.br - Assine e ganhe 1 mês grátis - Domínio .com.br somente R$ 25,00
Hospedagem, Revenda, Streaming, Revenda de Streaming e Desenvolvimento de sites
MSN: betolong@hostplay.com.br
E-mail: suporte@hostplay.com.br




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq