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
}
?>



Douglas Falou
Em: 16 de fevereiro de 2010 as 21:56Cara 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:33Você Pode Postar o Codigo da Conexao mysql ?
Robson V. Leite Falou
Em: 16 de fevereiro de 2010 as 23:33Scrips publicados conforme solicitado
Lucas Washington Falou
Em: 17 de fevereiro de 2010 as 2:52Muito 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:18Este é 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:40Agora 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:56http://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:05Lucas 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:16Ta ok , vou mandar o o script Pra você !
Lucas Washington Falou
Em: 17 de fevereiro de 2010 as 16:17Qual usuario e senha devo colocar?
Robson V. Leite Falou
Em: 17 de fevereiro de 2010 as 16:19Lucas Washington: do seu banco de dados!
Lucas Washington Falou
Em: 17 de fevereiro de 2010 as 16:36Acabei 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:54Eu 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:20Aee agora foi , mais nao foi o site enteiro
Lucas Washington Falou
Em: 17 de fevereiro de 2010 as 17:23O 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:24http://hackerleza.net.br/
Olha ae para você ver os erros
Lucas Washington Falou
Em: 17 de fevereiro de 2010 as 17:27Na 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:35Hm 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:32Entendi , muito Obrigado Pela ajuda !
Lucas Washington Falou
Em: 17 de fevereiro de 2010 as 18:32deixa 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:18Certo , muito Obrigado Pela Atenção .
Você é um ótimo tutor !
Willian Washington Falou
Em: 17 de fevereiro de 2010 as 23:33Olá Robson .
- gostei muito do video isto esta me ajudando bastante .
filipe Falou
Em: 18 de fevereiro de 2010 as 21:42Olá 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:36ae, 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:44Olá 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:59Consegui, 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:29Comigo 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:44O 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:42Ola 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:25Olá Joao Pereira, se acima dela so tem uma linha em branco então esta faltando o
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:36heheh … 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ê
Joao pereira Falou
Em: 19 de março de 2010 as 11:15Fala 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:33Olá 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:07Parabé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:32Tenho 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:57Eae 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:02Consegui 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:10agora 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:10As 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:13Parse 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:40Robson 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:30Ola 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:08ja 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:57Robson 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:13Ola 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:40Obrigado pelo retorno vou tentar fazer isto,valeu.
Anderson Falou
Em: 23 de junho de 2010 as 19:42Estava 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:12Se 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
, são crases pra demarca um campo do tipo data, time, timestamp.
Rafael Rodrigo Falou
Em: 4 de julho de 2010 as 18:07Ah 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:57olá, 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:33Robson 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:01Eu fiz tudo certo mais depois fica aprecendo uns interrogações porque isso ?
Luciano Júnior Falou
Em: 20 de julho de 2010 as 18:42Voçê pode corrigir isso com a VA :http://bit.ly/dbSTyg
Wesley Ribeiro Falou
Em: 21 de julho de 2010 as 23:59Robson 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:05Bom Tarde é pra colocar o texto pelo navicat ou pelo proprio dw ?
Daniel Duarte Falou
Em: 28 de julho de 2010 as 0:11amigo 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:36ta de parabens cara !
me ajudou muitoo tava faltando so esse pedacinho do final, para colocar no meu sistema de noticia…
obrigado, aulas bem explicadas !