Criando RSS 2.0 (Really Simple Syndication) com PHP e MySQL

Definição de RSS segundo a Wikipédia: "RSS é um subconjunto de 'dialectos' XML que servem para agregar conteúdo ou 'Web syndication', podendo ser acedido mediante programas ou sites agregadores. É usado principalmente em sites de notícias e blogs."


1º Passo: Copie o comando SQL abaixo e cole no seu console MySQL:

create database rss;

use rss;

create table noticias (


not_id int(6) not null auto_increment,


not_titulo varchar(60) not null,


not_texto text not null,


not_data date not null,


not_hora time not null,


constraint primary key(not_id)

);


2º Passo: Crie um arquivo PHP chamado Rss.class.php.



3º Passo: Edite o arquivo recém-criado e insira o seguinte código:

<?php

class Rss

{


#Declaracao de variaveis


private $conexao = null;




private $servidor;


private $usuario;


private $senha;


private $alias;




/**


* Construtor


*/


public function __construct()


{


#Dados para conexao com o banco de dados


$this- >servidor = "localhost";


$this- >usuario = "root";


$this- >senha = "vertrigo";


$this- >alias = "rss";




#Efetua a conexao com o banco e seleciona a base de dados


$this- >conexao = mysql_connect($this->servidor, $this->usuario, $this->senha);


if ($this- >conexao)


{


mysql_select_db($this- >alias, $this->conexao);


}


}




/**


* Gera o RSS 2.0


*


* @param String $titulo titulo do rss


*


* @param String $link url do site


*


* @param String $descricao descricao do rss


*


* @param String $tabela tabela do banco de dados que será puxada as informacoes


*


* @param String $campo campo da tabela pelo qual sera ordenado, de forma decrescente, o rss


*


* @param String $destino url de destino das noticias - Ex: http://www.site.com.br/noticia?id=


*


* @return void


*/


public function rss($titulo, $link, $descricao, $tabela, $campo, $destino)


{


#Seleciona os dados no banco de dados


$sql = "SELECT * FROM $tabela ORDER BY $campo DESC;";


$res = mysql_query($sql);




#Cria a variavel $xml com o codigo xml necessario para criar o RSS


$xml = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>";


$xml .= "<rss version=\"2.0\">";


$xml .= "<channel>";


$xml .= "<title>$titulo</title>";


$xml .= "<link>$link</link>";


$xml .= "<description>$descricao</description>";


$xml .= "<language>pt-br</language>";




#Verifica se o numero de linhas resultantes da query eh maior do que zero


if (mysql_numrows($res) > 0)


{


# "Quebra" a matriz


while ($dados = mysql_fetch_array($res))


{


$xml .= "<item>";


$xml .= "<title>$dados[1]</title>";


$xml .= "<link>$destino$dados[0]</link>";


$xml .= "</item>";


}


}




$xml .= "</channel>";


$xml .= "</rss>";




#Retorna o valor da variavel $xml


return $xml;


}

}

?>


4º Passo: Crie um arquivo chamado index.php, no mesmo diretório que o Rss.class.php, e insira o seguinte código:

<?php

require_once("Rss.class.php"); //chama o arquivo

$obj_rss = new Rss(); //instancia a classe

echo $obj_rss->rss("Exemplo de RSS 2.0", "http://www.seusite.com.br", "Últimas notícias", "noticias", "not_id", "http://www.seusite.com.br/noticia.php?id="); //escreve o valor retornado do metodo

?>


5º Passo: Basta inserir registros no banco de dados, acessar o arquivo index.php e pronto! Você já terá seu script RSS a disposição! Inseri dois registros no banco de dados, como exemplo, e obtive o seguinte resultado:





Créditos para Tiago Hillebrandt


Posted by Programador ASP

Nenhum comentário:

Postar um comentário