Aula 9: Criando mural de notícias com PHP/Mysql

Boa pessoal estamos entrando com mais uma aula para o curso criando um site profissional, e nesta aula criamos o mural com PHP/Mysql. Os posts são recolhidos de um banco de dados e impressos no sidebar e na página mural.

Na próxima aula agente volta criando o painel de postagem para o mural com área administrativa restrita por login e senha. Duvidas? Basta deixar comentado. E quem gosto faz barulho. Boa aula!

Conexão (em header.php):

<?php include”Connections/config.php”;

$conexao = mysql_connect(“$hostname_config”, “$username_config”, “$password_config”)
or die (“Erro ao conectar com o banco de dados. Por favor nos informe no e-mail contato@upinside.com.br!”);
$db = mysql_select_db(“$database_config”)
or die (“Erro ao selecionar a base de dados. Por favor nos informe no e-mail contato@upinside.com.br!”);

?>

Config.php:

<?php
$hostname_config = “localhost”;
$database_config = “va”;
$username_config = “root”;
$password_config = “”;
$config = mysql_pconnect($hostname_config, $username_config, $password_config) or trigger_error(mysql_error(),E_USER_ERROR);
?>

Script do loop (em mural e index.php)

<?php
$sql = “SELECT id, titulo, `data`, texto
FROM mural
ORDER BY data DESC, id DESC
LIMIT 5″;

$resultados = mysql_query($sql)
or die (mysql_error());
if (@mysql_num_rows($resultado) == 0)
echo(“”);
?>

<?php
while ($res=mysql_fetch_array($resultados)) {
$id = $res[0];
$titulo = $res[1];
$data = $res[2];
$texto = $res[3];
?>

#CONTEÚDO VAI AQUI:
<h2><?php echo date(‘d/m/Y’, strtotime($data) ); ?> – <?php echo $titulo; ?></h2>
<p><?php echo $texto; ?></p>

<?php
}
?>

Bookmark e Compartilhe

  • Douglas Falou

    Em: 16 de fevereiro de 2010 as 21:56

    Cara muito boas essas suas aulas. Estou montando meu primeiro site e estou conseguindo graças a você. Gostaria de saber se você não tem como disponibilizar os arquivos, principalmente o css e o index para visualizarmos melhor e tirar mais algumas dúvidas. Obrigado e continue assim….

  • Lucas Washington Falou

    Em: 16 de fevereiro de 2010 as 22:33

    Você Pode Postar o Codigo da Conexao mysql ?

  • Robson V. Leite Falou

    Em: 16 de fevereiro de 2010 as 23:33

    Scrips publicados conforme solicitado :P

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 2:52

    Muito Obrigado .
    - Posso te pedir uma ajuda , quando eu publico esse site que você ensina a fazer , da um erro de database pq ?

  • Robson V. Leite Falou

    Em: 17 de fevereiro de 2010 as 11:19

    @Lucas Washington:: Cole o erro aqui Lucas, assim posso lhe ajudar!

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 13:18

    Este é o seguinte Erro ” Fatal error: Call to undefined function tringger_error() in C:\Domains\hackerleza.net.br\wwwroot\Connections\config.php on line 6 ”

    eu ja criei uma base de dados no meu painel de revenda com esste nome que eu utilizei na base de dados (uolsitevideos)

  • Robson V. Leite Falou

    Em: 17 de fevereiro de 2010 as 13:30

    @Lucas Washington: Ele não definiu a váriavel. delete a seguinte linha do seu config.php e me diga qual erro gerou!

    $config = mysql_pconnect($hostname_config, $username_config, $password_config) or trigger_error(mysql_error(),E_USER_ERROR);

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 13:40

    Agora mostrou esse erro ( Erro ao conectar com o banco de dados. Por favor nos informe no e-mail uolsite@gmail.com ) oq é que eu tenho que fazer agora ??

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 13:56

    http://www.hackerleza.net.br/ entra ae para você ver o que aparece :/

    se você poder me ajudar eu te agradeço to precisando muito arrumar isso , smp quando eu fasso um site com MySQL acontece isso .

  • Robson V. Leite Falou

    Em: 17 de fevereiro de 2010 as 16:05

    Lucas Washington: Lucas 2 motivos podem estar gerando tal erro:

    1. o site não esta encontrando o arquivo config.php
    2. usuario, senha e ou banco de daods não existem ou não estão configurados corretamente.

    Verifique isto. ou me mande os scripts de conexão do header.php, e do config.php para meu e-mail que confiro pra você!

    PS: estou esperando um pouco de silêncio aqui para gravar a vídeo aula do painel.
    OBS: na última aula do curso vamos hospedar o site e mostrar como configura-lo!

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 16:16

    Ta ok , vou mandar o o script Pra você !

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 16:17

    Qual usuario e senha devo colocar?

  • Robson V. Leite Falou

    Em: 17 de fevereiro de 2010 as 16:19

    Lucas Washington: do seu banco de dados!

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 16:36

    Acabei de fazer isso e configurei o config.php , mais ainda continua a mesma coisa :(

  • Robson V. Leite Falou

    Em: 17 de fevereiro de 2010 as 16:42

    @:Lucas Washington: bom parece estar tudo certo pelo e-mail que me enviou, se você informou a senha e user no arquivo config.php. mas ainda posso lhe ajudar de outra forma. para visualizar o erro siga isto:

    no script do seu header ache as linhas:
    $conexao = mysql_connect(“$hostname_config”, “$username_config”, “$password_config”)
    or die (“Erro ao conectar com o banco de dados. Por favor nos informe no e-mail contato@upinside.com.br!”);

    e substitua por:
    $conexao = mysql_connect(“$hostname_config”, “$username_config”, “$password_config”)
    or die (mysql_error());

    Assim poderei ver o erro pra te ajudar!

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 16:54

    Eu fiz isso que você me disse , e apareceu isso ( Can’t connect to MySQL server on ‘localhost’ (10061) )

  • Robson V. Leite Falou

    Em: 17 de fevereiro de 2010 as 17:04

    @Lucas Washington:No arquivo config.php mude a linha:

    $hostname_config = “localhost”;

    Onde está localhost você deve por o endereço do seu banco de dados da hospedagem. esse endereço muda de acordo com sua hospedagem, na Hospedagem UpInside ele pega por localhost mesmo.

    veja com o suporte da sua hospedagem qual o endereço do banco de dados!

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 17:20

    Aee agora foi , mais nao foi o site enteiro :(

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 17:23

    O rodapé nao aparece , a aparte do mural tbm nao aparece , aonde fica o conteudo o Background deveria ser Branco mais esta com o o meu background que eu criei no Fireworks

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 17:24

    http://hackerleza.net.br/

    Olha ae para você ver os erros

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 17:27

    Na parte do mural Esta aparecendo isso ( Table ‘uolsitevideos.mural’ doesn’t exist )

    http://www.hackerleza.net.br entra ai e ve

  • Robson V. Leite Falou

    Em: 17 de fevereiro de 2010 as 17:32

    @Lucas Washington: ta tudo certo Lucas, só faltou você criar a tabela “mural” em seu banco de dados.

    va no seu PhpMyAdmin, entre no banco que você determinou para o site, clique na aba SQL e execute o codigo abaixo:

    CREATE TABLE `mural` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `titulo` text,
    `data` date DEFAULT NULL,
    `texto` text,
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=latin1;

    Após ter feito isso o mural vai encontrar a tabela e não vai travar o código. pois o mesmo parou na parte de recolher a tabela. por isso seu footer não aparecfe.

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 17:35

    Hm deu certo mais , a parte do mural tinha conteudo nela mais agora nao tem , pq ?

  • Robson V. Leite Falou

    Em: 17 de fevereiro de 2010 as 18:21

    @Lucas Washington: O Conteúdo do mural vem do banco de dados. sua tabela está vasia!

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 18:32

    Entendi , muito Obrigado Pela ajuda !

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 18:32

    deixa eu te Perguntar uma coisa , é dificio fazer um sistema de comentario ?

  • Robson V. Leite Falou

    Em: 17 de fevereiro de 2010 as 18:42

    @Lucas Washington: eu não considero Lucas. na verdade consiste na criação de um painel gerenciador. e um arquivo resgadatado por include dentro da PG. mas agente pode ver isso após o termino do curso!

  • Lucas Washington Falou

    Em: 17 de fevereiro de 2010 as 19:18

    Certo , muito Obrigado Pela Atenção .
    Você é um ótimo tutor !

  • Willian Washington Falou

    Em: 17 de fevereiro de 2010 as 23:33

    Olá Robson .
    - gostei muito do video isto esta me ajudando bastante .

  • filipe Falou

    Em: 18 de fevereiro de 2010 as 21:42

    Olá Robson. Estou acompanhando as aulas e tenho tido bastante proveito, parabens pela didática e obrigado pela disposição. Aguardo ansioso a prox. aula.

    Abraço.

  • Robson V. Leite Falou

    Em: 18 de fevereiro de 2010 as 22:17

    @Filipe: Ola Filipe, bem vindo a UpInside; e obrigado pelo comentário. Já estamos projetando as novas vídeo aulas que devem sair amanha, era para ter feito hoje mas estou criando um projeto para um cliente.

    Não vou dar certeza de amanha mas pretende terminar o curso antes de segunda feira para dar inicio a uma seqüência de vídeo aulas que programamos. Abrax!

  • Raphael Falou

    Em: 4 de março de 2010 as 18:36

    ae, Robson, excelente as video-aulas cara!
    po, eu tive um problema na criação do mural..
    na verdade eu to fazendo uma parte de novidades, como se fosse um blog, mas não to conseguindo postar nada, fica dando “No databases selected”..

    será que tem como me ajudar cara ?
    de qualquer maneira, brigadão e um abraço !

  • Robson V. Leite Falou

    Em: 4 de março de 2010 as 18:44

    Olá Raphael, se você criou o banco de dados, o erro está na sua conexão com ele ou no arquivo config.php, de uma olhada melhor na aula que fala sobre conectar com o banco de dados no link abaixo em mais ou menos 4 minutos de aula abordamos bem o assunto! abraço!

    http://www.upinside.com.br/video-aulas/cadastro-de-usuarios-com-upload-de-imagem

  • Raphael Falou

    Em: 6 de março de 2010 as 0:59

    Consegui, era mesmo um problema na conexão mas não com o banco de dados e sim entre a página onde entrariam os posts e a mural.php .. então fui na index.php (no meu caso, onde entrarão os posts) e coloquei:

    e agora tá tudo certo..
    MUITO obrigado cara, suas va’s são excelentes e estão me ajudando muito, continue assim!

    Abraço

  • Rodrigo Falou

    Em: 7 de março de 2010 as 12:29

    Comigo está ocorrendo erro tb. Uso o dreamweaver 8, será que isso tem haver?

    Warning: Can’t connect to MySQL server on ‘localhost’ (10061) in c:\apache\htdocs\site\Connections\config.php on line 6

    Fatal error: Can’t connect to MySQL server on ‘localhost’ (10061) in c:\apache\htdocs\site\Connections\config.php on line 6

  • Robson V. Leite Falou

    Em: 7 de março de 2010 as 12:44

    O erro esta na conexão com seu baco de dados Rodrigo. confira os seguintes. seu banco de dados esta realmente em localhost? O arquivo config.php que está gerando o erro está correto? seu apache e sql estão ligados e configurados corretamente?

    se quiser publicar o código para poder averiguar digiteo entre as tags [ php ] Código [ /php ] (remova os espaços entre dentro de [])

  • Joao pereira Falou

    Em: 18 de março de 2010 as 11:42

    Ola Robson,

    Seguinte, ja vi td e nao encontro o motivo desse erro. Fiz ctrl-c , ctrl-v to seu codigo e continua dando esse erro :

    Parse error: syntax error, unexpected T_VARIABLE in Z:\Program Files\wamp\www\noticias\index.php on line 3

    E esta é a linha 3:

    $conexao = mysql_connect(“$hostname_config”, “$username_config”, “$password_config”)

    Acima dela so tem uma linha em branco (enter) por isso nao pedria ser da linha anterior

    HELP MAN !

  • Robson V. Leite Falou

    Em: 18 de março de 2010 as 12:25

    Olá Joao Pereira, se acima dela so tem uma linha em branco então esta faltando o

    <?php include"conexao.php";

    conexao.php deve ser o nome do seu arquivo de configuração onde as variaveis $hostname_config, $username_config e $password_confi recuperam seus valores

  • Joao pereira Falou

    Em: 18 de março de 2010 as 12:36

    heheh … nao nao, ja tem essa em cima da linha em branco ok ? Mas nao é conexao.php … é <?php include”config.php”;

  • Robson V. Leite Falou

    Em: 18 de março de 2010 as 12:44

    @Joao Pereira: me manda a página que está dando o erro e a config.php no email contato@upinside.com.br que olho pra você :P

  • Joao pereira Falou

    Em: 19 de março de 2010 as 11:15

    Fala veio … mandei no email q estava aberto aki do gmail – guarabira ok ? No aguardo BRIGADAO !

  • Robson V. Leite Falou

    Em: 19 de março de 2010 as 13:33

    Olá novamente Joao Pereira, verifiquei seu script e o único erro é nas aspas duplas do script.

    Estão como “ e o correto é “, basta substituir que tudo ficará bem!

    PS você pode dar um CRTL + F no DW e colara a “ no primeiro campo e colocar ” no segundo e mandar substituir que toas as aspas serão corrigidas!

    Grande Abraço!

  • Madson Falou

    Em: 24 de março de 2010 as 21:07

    Parabéns, o sistema de nóticias é legal e simples de usar, o que facilita a vida de programadores iniciantes, mas tenho uma dúvida^^
    Esse sistema de notícias gera a notícia na página “notícias” e na sidebar^^ Isso é muito legal, o problema é que a mesma notícia que esta na íntegra na sidebar tambem esta na página, sendo que o mais certo e óbvio era termos uma prévia da notícia na sidebar que deve ser linkada com destino a página de notícias e ainda exatamente onde a notícia esta.

    Como fazer isso? Pergunto aqui porque gostei das aulas e gostaria de implementar mais ainda o que ja aprendi.

    Abraços

  • Eduardo Bruno Falou

    Em: 8 de abril de 2010 as 13:32

    Tenho um problema para inserir um banco de dado, eu coloco exatamente como pede a video aula e sempre dar error no header, fala alguma coisa sobre o tempo de 30 segundos q expirou, me ajude cara pois já estou perdendo cabeça.

  • Nilobig Falou

    Em: 20 de abril de 2010 as 16:57

    Eae Cara dá uma ajuda ae eu faço o modelo do site até essa Video Aula depois coloco o script que você postou mais não estou conseguindo abria a Home fica só aparecendo Erro ao conectar com o banco de dados. Por favor nos informe no e-mail nilobig@hotmail.com! e não consigo mais visualizar mais nada não tem um scripts mais fácil não ou só tem pois não consigo prossiguir com a parte do mural…

  • Nilobig Falou

    Em: 20 de abril de 2010 as 17:02

    Consegui abrir meu servidor estava parando nessa parte eu peguei e reistatei o easyphp e funcionou.

  • Nilobig Falou

    Em: 20 de abril de 2010 as 21:10

    agora Tá a vendo outro problema e não sei como fazer para resolver dá uma ajuda ae e fiz como a video aula manda mas quando entro no link do mural no meu menu aparece esse erro:

    Parse error: syntax error, unexpected T_LOGICAL_OR in C:\Arquivos de programas\Easy\www\Site Upinside 2010\nav\mural.php on line 10

  • antonio carlos Falou

    Em: 8 de maio de 2010 as 1:10

    As aulas são muto boa mas estou com um problema estou na aula 8 e esta dando esse erro
    Parse error: syntax error, unexpected T_VARIABLE in C:\Program Files\EasyPHP-5.3.2i\www\lado4\header.php on line 7
    como devo proceder?
    agurdo contato.
    obrigado

  • antonio carlos Falou

    Em: 8 de maio de 2010 as 1:13

    Parse error: syntax error, unexpected T_VARIABLE in C:\Program Files\EasyPHP-5.3.2i\www\lado4\header.php on line 7

  • Bruno Aquino Falou

    Em: 18 de maio de 2010 as 23:40

    Robson você poderia me ajudar em uma coisa ? Como eu crio um gerenciador de sites pode ser em php mesmo onde posso encontrar códigos e tal ? È que preciso criar um gerenciador de sites para meus clientes poderem eles mesmos editar de um jeito fácil. Abraços

  • Robson V. Leite Falou

    Em: 19 de maio de 2010 as 10:35

    @Bruno Aquino: Fala meu querido, em nosso curso criando um Site Dinâmico, encinamos a criar programando um site com gerenciador!

  • Adrian Falou

    Em: 1 de junho de 2010 as 15:30

    Ola robson
    to com um problema com a data do mural
    ela só fica em 01/01/1970
    poderia me ajudar com isso?

  • Neto Falou

    Em: 6 de junho de 2010 as 17:08

    ja agradecendo à sua disponibilidade em fazer estas video aulas que são show de bola!!!

    ta dando esse erro aki–>

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘LIMIT 5′ at line 4

    obrigado!

  • pedro silva Falou

    Em: 9 de junho de 2010 as 12:57

    Robson não estou conseguindo acessar os videos,eles não abrem pra min ser´a que vc poderia me tirar essa duvida ,se é comigo este problema ou se é com os videos postsdos

  • Robson V. Leite Falou

    Em: 9 de junho de 2010 as 14:13

    Ola Pedro, o vídeo está normal, baixe o desinstalador do flash player e o último flash player. rode o desinstalador para remover o antigo de seu PC depois instale o novo!

  • pedro silva Falou

    Em: 9 de junho de 2010 as 16:40

    Obrigado pelo retorno vou tentar fazer isto,valeu.

  • Anderson Falou

    Em: 23 de junho de 2010 as 19:42

    Estava tão feliz de ter achado uma video aula sobre isso hehe
    deu um erro aqui, cheguei até copia o seu script e colas mas continua o erro…

    Warning: mysql_query() [function.mysql-query]: Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

    Linha 10, na linha 10 tem isso $resultados = mysql_query($sql) or die (mysql_error());

    ):

  • Luciano Júnior Falou

    Em: 24 de junho de 2010 as 9:58

    @Anderson : mande o conteudo da variavel $sql.

  • Rafael Rodrigo Falou

    Em: 27 de junho de 2010 as 23:12

    Se alguem tiver o mesmo problema que o Adrian falou, que eu acabei tendo também, de a data só mostrar 01/01/1970, é só no select retirar as aspas do campo data.

  • Robson V. Leite Falou

    Em: 28 de junho de 2010 as 0:38

    @Rafael Rodrigo: não são aspas :D , são crases pra demarca um campo do tipo data, time, timestamp.

  • Rafael Rodrigo Falou

    Em: 4 de julho de 2010 as 18:07

    Ah ta, desculpa, eu não tinha reparado que você tinha usado crase(“) aqui, eu usei aspas simples(”) quando deu errado, mas sem elas funcionou certinho… Pode ser que ajude alguem…
    Mas vlw Robson

  • Leandro Falou

    Em: 19 de julho de 2010 as 16:57

    olá, eu fiz tudo corretamente e funcionou muito bem, mas como eu faço para limitar o número de caracteres exibidos e como fazer pra quando a pessoas clicar no título da notícia ela ser redirecionada para a notícia completa?
    Outra coisa. Os caracteres especiais não estão aparecendo, como eu faço para corrigir isso?

  • Wesley Ribeiro Falou

    Em: 20 de julho de 2010 as 12:33

    Robson o meu está dando esse erro
    Parse error: parse error in C:\wamp\www\videoaula\header.php on line 12
    e nao conecta por nada !

  • Lucas Nascimento Falou

    Em: 20 de julho de 2010 as 18:01

    Eu fiz tudo certo mais depois fica aprecendo uns interrogações porque isso ?

  • Luciano Júnior Falou

    Em: 20 de julho de 2010 as 18:42

    Voçê pode corrigir isso com a VA :http://bit.ly/dbSTyg

  • Wesley Ribeiro Falou

    Em: 21 de julho de 2010 as 23:59

    Robson o meu está dando esse erro
    Parse error: parse error in C:\wamp\www\videoaula\header.php on line 12
    e nao conecta por nada !
    oque eu faço ?

  • Luciano Júnior Falou

    Em: 22 de julho de 2010 as 10:01

    @Wesley Ribeiro: Você pode me informar a linha 11, 12 e 13 do header.php??

  • Lucas Nascimento Falou

    Em: 23 de julho de 2010 as 13:05

    Bom Tarde é pra colocar o texto pelo navicat ou pelo proprio dw ?

  • Daniel Duarte Falou

    Em: 28 de julho de 2010 as 0:11

    amigo as suas aulas são show, eu só estou tendo um problema com a parte do mural de recados e está “criando um site profissional” eu coloco os codigos q vc nos passa mas da erro o bady da página some. me dar uma força.
    obrigado.

  • Luciano Júnior Falou

    Em: 28 de julho de 2010 as 7:58

    @Daniel Duarte: Você pode colocar seu erro ai!

  • Andrew Chan Falou

    Em: 28 de julho de 2010 as 8:36

    ta de parabens cara !
    me ajudou muitoo tava faltando so esse pedacinho do final, para colocar no meu sistema de noticia…
    obrigado, aulas bem explicadas !

Leave a comment

Sobre o Autor

Robson V. Leite

23 Anos, Residente da cidade de Florianopolis SC. Trabalha com web desde 2006, sempre busca aprender novas tecnologias.

http://www.upinside.com.br/ contato@upinside.com.br

Dados do Artigo

16 fev 2010 as 21:02

4.498 Visitas

71 Comentários

RSS deste Artigo

OPNIÕES

  • Quais dos conteúdos abaixo te chamam mais atenção!

    View Results

    Loading ... Loading ...

Publicidade

Notícias