Criando notícias em RSS para seu site a partir de XML e MySQL

Publicado por Leandro Alexandre ® em 04/01/2009

[ Hits: 11.501 ]

 


Criando notícias em RSS para seu site a partir de XML e MySQL



Requisitos para escrever e executar o sistema:
  • PHP
  • MYSQL
  • XML

Qualquer hospedagem Linux tem!

Para escrever o sistema, um editor de texto serve ou programa de sua preferência.

Tabelas e campos do MySQL:

Crie uma Tabela chamada: noticiasrss

Depois crie os campos:
  • datainclusao
  • datasaida
  • titulo
  • descricao
  • link

Agora criaremos o arquivo php para gerar o XML a partir do MySQL.

Crie um arquivo chamado rss.php. Insira nele as linhas abaixo:

<?php
// só use daqui
$hostname_config = "localhost"; // ou ip do servidor
$database_config = "seubanco";
$username_config = "root";
$password_config = "suasenha";
$config = mysql_pconnect($hostname_config, $username_config, $password_config) or trigger_error(mysql_error(),E_USER_ERROR);
$bd = mysql_select_db("$database_config", $config);
// até aqui !!!!!!!!! se não tiver um arquivo de conexao.php
// caso tenha o arquivo de conexao.php apague esta parte do script ou //comente colocando //
?>

<?php
// insira aqui seu arquivo de conexao com o mysql
// include ("conexao.php");
// para usar apague os // do início e substitua o
// arquivo conexao.php por seu arquivo de conexão



// formato de data em português brasil.
$data = date("d/m/Y");

$sql = "select titulo, descricao, date_format(datasaida,'%d/%m/%Y') as data from noticiasrss where datainclusao >= NOW()";

$query = mysql_query($sql);
  
// print o cabeçalho do xml
header("Content-type: application/xml");
  
// cabeçalho do RSS
echo "<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>";
?>

<rss version="2.0">
    <channel>
        <title>Titulo site - Notícias</title>
        <link>Link do site</link>
        <description>Descrição  do site</description>
        <language>pt-br</language>
        <copyright>Site - Todos os direitos reservados.</copyright>
        <image>
            <title>Titulo do imagem</title>
            <url>URL da imagem - Logo</url>
            <link>Link da imagem para o site</link>
        </image>
        <lastBuildDate><?=$data;?></lastBuildDate>
        <ttl>20</ttl>
        <?php
        while($result = mysql_fetch_array($query)) {
        ?>
            <item>
                <title><?=$result[titulo];?></title>
                <link><?=$result[link];?></link>
                <description><?=$result[descricao];?></description>
                <datePosted><?=$result[datainclusao];?></datePosted>
            </item>
        <?php
        }
        ?>
    </channel>
</rss>

Pronto, agora é só rodar ele no seu servidor!

Insira uma notícia na tabela e execute o rss.php no seu browser como no exemplo abaixo:

http://seusiteouip.com.br/rss.php

Espero ter contribuído e ajudado vocês.

Leandro

Outras dicas deste autor

rcconf: configure e controle os serviços de inicialização do Debian ou Ubuntu

Mantenha seu servidor Ubuntu atualizado!

Shellshock - Corrigindo falha de segurança do bash em seu servidor Debian

Excluir arquivo de uma pasta do servidor através do PHP

Criando um contator de visitas para seu site (PHP grava no TXT)

Leitura recomendada

Cuidado com nomes de arquivos no Linux

As 10 distribuições Linux preferidas nos últimos 3 meses

Como conquistar a LPI 1

Resolvendo erro de TLS no aMSN 0.97b sem fazer downloads

Resume em downloads

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts