O documento descreve um sistema de notícias com as seguintes funcionalidades:
1) Criação de um banco de dados e tabela para armazenar notícias;
2) Páginas para exibir, inserir e editar notícias;
3) Uso de PHP e MySQL para conexão ao banco e gerenciamento das notícias.
7. <div id="centro">
<?php
//Pega os dados passados pela URL
$pagina = (isset($_GET["pagina"])) ? $_GET['pagina'] : '';
//Verifica se a string passada possui algum trecho invalido. Caso tenha mostra uma mensagem de erro
if(eregi("<html>|iframe|form|script|object|http|www|ftp|.dat|.txt|.gif|wget|from|select|insert|delete|where|drop table|show
tables", $pagina)) {
echo "Violação de Segurança! Você provavelmente tentou entrar numa página inexistente. Volte e acesse a
página correta.";
//Se a variavel passada estiver dentro das normas, executa o ELSE abaixo:
}else{
if(!empty($pagina)) {
include ("$pagina.php");
}else{
include ("inicio.php"); //incluo a página inicial
}
}
?>
</div>
8. • Eregi() - Verifica se a variavel casa com a
expressão regular definida no parametro
expressao;
• Include() – inclui um arquivo php
10. banco/inserir.php
<?php
include("../config.php");
?>
<?php
//Pegando as variaveis do Formulário
$titulo = $_POST['titulo'];
$texto = $_POST['texto'];
$sql = mysql_query("INSERT INTO noticias (titulo, texto) VALUES ('".$titulo."', '".$texto."')");
$id_noticia = mysql_insert_id(); //ID gerado para esta inserção. Usado sempre após mysql_query.
if(!$sql){
echo "Erro ao tentar inserir registro: ".mysql_error();
}else{
//Alerta de Sucesso e efetua redirecionamento
print "<script>alert('Noticia criada com sucesso! Seu ID é $id_noticia .')</script>";
print "<script>window.location.replace('../index.php')</script>";
}//Fecha ELSE
?>
11. • mysql_query — Envia uma consulta
MySQL
• mysql_insert_id() - returna o ID gerado
para um campo AUTO_INCREMENT pela
ultima query INSERT
12. exibe.php
<?php
include("config.php");
?>
<!-- Titulo da página -->
<h3 align="center">Lista de Noticias</h3>
<?php
$sqlStr = "SELECT * FROM noticias ORDER BY titulo ASC";
$aux = mysql_query($sqlStr); //Seleciono os dados para exibição
$sqlStrAux = "SELECT count(*) as total FROM noticias ORDER BY
titulo ASC";
$b = mysql_fetch_assoc(mysql_query($sqlStrAux)); //Conto
quantidade de registros para fazer a condição