Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

AmareshinO

[Resolvido] Sistema de noticias

Recommended Posts

Agora vou ensinar como montar um sistema de notícias com Code BB siples, funcional e prático!

 

Vamos lá:

 

Passo 1: Criar o Database

Abra o phpmyadmin (127.0.0.1/phpmyadmin) e crie uma database com o nome noticias ou execute o comando SQL:

CREATE DATABASE 'noticias';

Passo 2: Criar o arquivo de configurações do sistema

 

Arquivo: incluidos/configuracoes.php

<?php
// Sistema de notícias 1.0



// Arquivo: incluidos/configuracoes.php (Configurações do sistema)

// Configurações do mySQL
$mysql['host'] = "localhost"; // Servidor do mySQL
$mysql['usuario'] = "root"; // Usuário do mySQL
$mysql['senha'] = "senha"; // Senha do usuário do mySQL
$mysql['database'] = "noticias"; // Database onde serão guardados os dados

// Configurações de administração

$admin['login'] = "mestre"; // Login da área de administração
$admin['senha'] = "senha"; // Senha da área de administração

// Configurações das notícias

$noticias['max'] = "15"; // Numéro máximo de exibições de notícias

?>

Passo 3: Criar a Database

 

Agora ja temos as configurações, vamos criar a Database do sistema.

 

Arquivo: instalar.php

<?php
// Sistema de notícias 1.0



// Arquivo: instalar.php (Instalador do sistema)

require("incluidos/configuracoes.php");
mysql_query("CREATE TABLE `noticias`.`noticias` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`titulo` TEXT NOT NULL ,
`noticia` TEXT NOT NULL ,
`data` DATE NOT NULL ,
`hora` TIME NOT NULL
)")
header("Location:index.php");
?>

Passo 4: Criar o login de administração

 

Agora temos que criar o formulário de login para a área de administração

 

Arquivo: admin.php

<?php
// Sistema de notícias 1.0



// Arquivo: admin.php (Login do sistema)
?>
<html>
<head>
<title>Sistema de Notícias - Login na área administrativa</title>
</head>
<form action="logar.php" method="post">
Login: <input name="login" type="text">
Senha: <input name="senha" type="password">
<input name="logar" type="submit" id="logar" value="Logar">
</form>
</html>

Passo 5: Criar o sistema de verificação de dados do administrador

 

Agora precisamos criar o arquivo que verifica se os dados digitados são os mesmos da canfiguração.

 

Arquivo: logar.php

<?php
// Sistema de notícias 1.0



// Arquivo: logar.php (Verifica login no sistema)

include("incluidos/configuracoes.php");

$login = $_POST['login']; // Campo Login do formulário
$senha = $_POST['senha']; // Compo Senha do formulário

if ($login == $admin['login'] && $senha == $admin['senha']) {
 setcookie("logado", 1);
 header("Location:adcionar_noticias.php");
 exit();	
}
else {
 header("Location:admin.php");
 exit();
}

?>

Passo 6: Criar o formulário para adcionar notícias

 

Arquivo: adcionar_noticias.php

<?php
// Sistema de notícias 1.0



// Arquivo: adcionar_noticias.php (Formulário de adção de notícias)

// Checa se o usuário esta logado no sistema
if (isset($_COOKIE['logado'])) {
 $logado = $_COOKIE['logado'];
}
else {
 header("Location:admin.php");
 exit();
}

?>

<html>
<head>
<title>Sistema de Notícias - Adcionar Notícias</title>
</head>
<?php
if (isset($_GET['msg'])) {
 echo $_GET['msg'];
}
?>
<form action="salvar_noticias.php" method="post">
<table width="311" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="95"><div align="right">Titulo::</div></td>
    <td width="216"><label>
      <div align="center">
        <input name="titulo" type="text" id="titulo">
        </div>
    </label></td>
  </tr>
  <tr>
    <td>Notícia :: </td>
    <td rowspan="2"><div align="center">
      <label>
        <textarea name="noticia" rows="10" id="noticia"></textarea>
        </label>
    </div></td>
  </tr>
  <tr>
    <td><div align="right"></div></td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td colspan="2"><div align="center">
      <label>
      <input name="adcionar" type="submit" id="adcionar" value="Adcionar Noticía">
      </label>
    </div></td>
  </tr>
</table>
</form>
<font color=#B2A978 size=2><strong>Codes BB para o Post:</strong><br>
[n]Texto[/n] - Negrito<br>
[i]Texto[/i] - Itálico<br>
[s]Texto[/s] - Sublinhado<br>
[cor="cor"]Texto[/cor] - Escreve o texto na cor digitada<br>
[url]www.link.com.br[/url] - Link<br>
[url="www.link.com.br"]Nome do Site[/url] - Link<br>
[email]email@provedor.com.br[/email] - Link de email</font>
</html>

Passo 7: Criar o arquivo para salvar os dados na database

 

Arquivo: salvar_noticias.php

<?php
// Sistema de notícias 1.0



// Arquivo: salvar_noticias.php (Salva as notícias na dB)

// Checa se o usuário esta logado no sistema
if (isset($_COOKIE['logado'])) {
 $logado = $_COOKIE['logado'];
}
else {
 header("Location:admin.php");
 exit();
}

include("incluidos/configuracoes.php");

$titulo = $_POST['titulo'];
$noticia = $_POST['noticia'];
$data = date("Y-m-d");
$hora = date("H:i:s");

if ($titulo != "" && $noticia != "") {

mysql_connect($mysql['home'],$mysql['usuario'],$mysql['senha']);
mysql_select_db($mysql['database']);
mysql_query("INSERT INTO noticias (titulo, noticia, data, hora) VALUES ('$titulo', '$noticia', '$data', '$hora')");
header("Location:adcionar_noticias.php?msg=Noticia+adcionada+com+sucesso");
}
else {
 header("Location:adcionar_noticias.php");
 exit();
}

?>

Passo 8: Criar o Index para a Visualização das Notícias

 

Arquivo: index.php

<?php
// Sistema de notícias 1.0



// Arquivo: index.php (Exibe as notícias)
?>
<html>
<head>
<title>Sistema de Notícias</title>
</head>
<?php
include("incluidos/configuracoes.php");
mysql_connect($mysql['home'],$mysql['usuario'],$mysql['senha']);
mysql_select_db($mysql['database']);
$resultado = mysql_query("SELECT * FROM noticias ORDER BY id DESC LIMIT $noticias[max]");
while ($linha=mysql_fetch_array($resultado)) {
$titulo = $linha['titulo'];
$noticia = $linha['noticia'];
$data = $linha['data'];
$hora = $linha['hora'];
$novadata = substr($data,8,2) . "/" .substr($data,5,2) . "/" . substr($data,0,4);
$novahora = substr($hora,0,2) . ":" .substr($hora,3,2) ."";

$codebb_1 = array();
$codebb_2 = array();

$codebb_1[] = "/\[n]/sU";
$codebb_2[] = '<b>';
$codebb_1[] = "/\[\/n]/sU";
$codebb_2[] = '</b>';
$codebb_1[] = "/\[i]/sU";
$codebb_2[] = '<i>';
$codebb_1[] = "/\[\/i]/sU";
$codebb_2[] = '</i>';
$codebb_1[] = "/\[s]/sU";
$codebb_2[] = '<u>';
$codebb_1[] = "/\[\/s]/sU";
$codebb_2[] = '</u>';
$codebb_1[] = "/\[cor=(['\"]?)([a-zA-Z0-9]*)\\1](.*)\[\/cor\]/sU";
$codebb_2[] = '<font color="\\2">\\3</font>';
$codebb_1[] = "/\[url]([^;<>\*\(\)\"']*)\[\/url\]/sU";
$codebb_2[] = '<a href="//\\1" class="style4b" target="_blank">\\1</a>';
$codebb_1[] = "/\[url=(['\"]?)([^\"\(\)\?\&'<>]*)\\1](.*)\[\/url\]/sU";
$codebb_2[] = '<a href=//\\2 target="_blank" class="style4b">\\3</a>';
$codebb_1[] = "/\[email]([^;<>\*\(\)\"']*)\[\/email\]/sU";
$codebb_2[] = '<a href="mailto:\\1" style="style4b" class="style4b">\\1</a>';

$noticia = preg_replace($codebb_1, $codebb_2, $noticia);

echo '<table width="100%" border="1" cellpadding="1" cellspacing="1">
<tr>
    <td><b>'. $titulo .'</b> ('. $novadata .' - '. $novahora .')</td>
  </tr>
  <tr>
    <td>'. (nl2br($noticia)) .'</td>
  </tr>
</table>';
}
?>
</html>

 

---------------INSTALANDO---------------

 

Faça o passo numéro 1 e depois execute o arquivo instalar.php para ele gerar a Database no mySQL.

 

Qualquer duvida, postem aqui!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.