Outros artigos desta série Sistema de Notícias em PHP e MySQL:
Upload De Imagens
Decidi atender ao pedido de um leitor e integrar já um sistema de upload de imagens. A mensagem desta minha decisão é simples: Somos Uma Comunidade! Este sistema de notícias irá evoluir de acordo com os vossos comentários. A decisão sobre as funcionalidades deste sistema de notícias é vossa. Sem prejuízo do princípio subjacente a este projeto: não queremos criar um Joomla, um WordPress ou um Drupal. Esses CMS já existem e são open source e grátis. Queremos um sistema de notícias simples e fácil de usar, por 2 razões:
- Este tutorial tem como destinatários aqueles leitores que estão a aprender PHP e MySQL e a aprendizagem é como uma escada que vai do simples até ao mais complexo. Vamos começar pelo simples.
- Muitas vezes, até para a maioria dos sites para empresas, um Joomla ou um Drupal são demasiado complexos. E um sistema de notícias simples é mais vantajoso para o programador e especialmente para o utilizador final, que não vai ter 101 opções de configuração e não vai precisar de ler um manual para editar um artigo.
Não criamos um módulo autónomo para o sistema de upload. Mas, podemos fazer isso no futuro. Depende da evolução do script. É um sistema de upload muito simples e que nem mexemos na base de dados. Vamos utilizar um campo já existe na base de dados MySQL para guardar o nome do ficheiro da imagem: n_img.
Em relação ao script publicado na Parte1, alteramos os seguintes ficheiros:
- index.php
- admin/admin.php
- admin/inserir-noticia.php
O Ficheiro admin/admin.php
Não alteramos muito o código do formulário. Vamos analisar em pormenor as alterações do ficheiro admin/admin.php:
// A seguinte linha de código:
14 Responses
Olá, sou iniciante em PHP e estou gostando muito dos seus tutoriais. Hoje em dia não se acha tutoriais passo-a-passo explicativo pela net com tanta facilidade, já que muitos desenvolvedores preferem simplesmente disponibilizar o código.
Estou acompanhando esta série, e devo lhe dizer, que o fato dela começar bem simples facilita a vida do iniciante, já que posso acompanhar a evolução do sistema.
Dúvida…
No arquivo admin.php, da pasta admin, ao rodar o script surgem dois erros: na linha 19 e na linha 36
Linha 19: <?php if ($_GET['accao']!='noticia') { ?>
Linha 36: <?php if ($_GET['accao']=='noticia') { ?>
Poderia me ajudar a resolver esse erro?
Olá Ricardo,
Na verdade não são 2 erros mas sim; 2 notificações;
"Notice: Undefined index: accao in ***adminadmin.php on line 19"
Indica que a variável accao não foi definida. Logo na linha 19, a quem aparece a notificação, pode substituir:
<?php if ($_GET['accao'] != 'noticia') { ?>
Pela seguinte linha:
<?php if (!(isset($_GET['accao']))) {$_GET['accao'] = "NULL";} if ($_GET['accao'] != 'noticia') { ?>
Não deu certo essa solução, quando envia a noticia ela redireciona para "http://localhost/noticia/admin/admin.php?accao=noticia" e você colocou como NULL a pagina acaba a ficar em branco. Eu apenas deletei a linha 19 e 36 e coloquei o header do arquivo inserir-noticia.php para admin.php, funcionou.
Tambem quero mostrar as modificações que eu fiz e adequei ao meu site, ficou assim:  ;http://i.imgur.com/d5xy474.jpg
Removi a string img e adicionei "dia" e "Mes/Ano".
Duvida: Como faço para aparecer apenas as ultimas 2 noticias e não aparecer todas?
Olá Ricardo,
Na verdade não são 2 erros mas sim; 2 notificações;
"Notice: Undefined index: accao in ***\\admin\\admin.php on line 19"
Indica que a variável accao não foi definida. Logo na linha 19, a quem aparece a notificação, pode substituir:
<?php if ($_GET['accao'] != 'noticia') { ?>
Pela seguinte linha:
<?php if (!(isset($_GET['accao']))) {$_GET['accao'] = "NULL";} if ($_GET['accao'] != 'noticia') { ?>
Olá
Primeiro quero felicita-lo por esta iniciativa, pois ainda existem muitos poucos artigos na net sobre este assunto !
Estou a seguir passo por passo, mas não estou a conseguir inserir informação na base de dados…
Ao introduzir texto no formulário admin.php, aparece uo erro do último echo do ficheiro inserir-noticia.php "Ficheiro não permitido". Isto mesmo sem inserir imagens…
Já fiz download do ficheiro zip que disponibilizou mas continua a dar o mesmo erro…
A versão que uso do phpMyAdmin é a 3.2.4 e a do PHP: 5.3.1
Qual será o problema?
Cumprimentos
Olá! Tenho que perguntar aso programador, mas parece-me que é necessário incluir uma imagem. Caso contrário, ocorre esse erro. Mas, este sistema de notícias é um projecto em evolução e o vosso feedback é que irá decidir o seu caminho. Um Abraço Rui Soares
Olá !
Ao que parece terá a ver com o tamanho da imagem. 100kb será o máximo permitido, ainda não encontrei a linha de código que limita o tamanho, mas testei com vários tamanhos e formatos e apenas consigo adicionar imagens menores ou igual a 100kb.
Abraço
Olá Bruno! Vou pedir ao António para responder. Ele é que está a escrever este tutorial. Um Abraço Rui Soares
Amigo sobre o tutorial 1 2 3 como faço? instalo o 1 depois sobreponha la no segundo na pasta e depois o 3 ???ou tem q ir mudando dentro do script do 1???
seria legal sistema de comentarios abaixo da noticia com contador de quantos comentarios… obg
Olá Bruno,
Procura a seguinte variável: ($_FILES["imgs"]["size"] < 120000)
Basta mudares os 120000 Bytes para o valor que precisas, sempre em Bytes.
Olá parabéns pelo post.
Teria como vc me passar uma forma de upload de imagem que fizesse com que a imagem tivesse uma miniatura e tambem modificase o tamanho da imagem pois se coloco uma imagem com resolução muito alta ela fica muito grande. Queria como se fosse um padrão para que esta imagem nunca passe deste tamanho.
Muito obrigado.
Olá, sou uma estudante do 12º ano e também estou a dar php e para a PAP estou a fazer um site o que tambem é um projecto duma disciplina… Este tutorial foi muito útil mesmo, porque é bastante simples e é tudo feito passo a passo, muitos parabéns por este excelente trabalho.Mas tenho um problema, eu usei este sistema de noticias para o meu site, mas agora estou com o mesmo problema que o Marcelo, queria que as imagens que são inseridas, tivesses um tamanho exacto, não em termos de bytes mas em termos de pixeis, ou seja o tamanho da imagem e não o peso.Se me pudessem ajudar agradecia.Obrigada, cumprimentos.
Ola, so hoje conheci este site quando procurava por um sistema de noticias em php. Como sou um iniciante em php, desejo saber como adiciaonar categorias categoria de noticias ou noticias por categorias?
Agradeco desde ja a vossa disponibilidade.