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

Publicado por Leandro Alexandre ® em 04/01/2009

[ Hits: 11.476 ]

 


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

Mantenha seu servidor Ubuntu atualizado!

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

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

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

Instalando e configurando na mão o PHP 5 e MySQL 5 no Ubuntu 7

Leitura recomendada

Tutorial de instalação do PCLinuxOS - um excelente trabalho de suporte aos iniciantes

Criando um roteador com o Linux

SMTP Relay Gmail ou SMTP Externo no FreeBSD 10

Instalação do Jboss no Fedora 8 Linux

GULZO - Grupo de Usuários Linux da Zona Oeste do Rio de Janeiro

  

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