Atom é o nome dado a um estilo baseado em conteúdo XML e metadata, ou seja, é um protocolo em nível de aplicação para publicar e editar fontes web que são periodicamente atualizados, um exemplo para isto são os blogs.
Como você pode notar, as entradas em um Feed podem vir de um banco de dados e ocupar muito espaço no feed, o bom seria pegar os últimos 15 posts do site em questão e enviá-los para uma variável fazendo uso de um loop como no exemplo:
// Conecta ao banco de dados MySQL
$db=mysql_connect($host, $sql_login ,$sql_passwd);
mysql_select_db ($nome_bd);
//estou assumindo que a tabela
//chame-se artigos na variável $tabela
$sql="SELECT * FROM $tabela ORDER by ID desc";
$resultado = mysql_query($sql,$db);
if (mysql_numrows($resultado)){
$a1=0;
while (($linha = mysql_fetch_row($resultado)) and ($a1!=15)) {
$a1=$a1+1;
$conteudo.="
<entry>
<title>$linha[4]</title>
<link href=http://www.genova.einet.com.br/artigos.php?id=$linha[0]/>
<id>http://www.genova.einet.com.br/artigos.php?id=$linha[0]/</id>
<updated>$linha[3]</updated>
<summary>$linha[5]</summary>
<author>
<name>$linha[1]</name>
</author>
</entry> ";
}
}
mysql_free_result($resultado);
if ($db){
mysql_close($db);
}
?>
//Estou assumindo que a
//Linha 4 = Título
//Linha 0 = ID do artigo
//Linha 3 = Data
//Linha 5 = Descrição
//Linha 1 = Autor
//Faça as alterações de forma que seu script funcione.
?>
Este simples script irá pegar os dados do banco de dados e criar as entradas, uma por uma, até um total de 15 entradas de acordo com a variável $a1.
Em seguida você deverá adicionar o cabeçalho do Feed:
[1] Comentário enviado por lipse em 23/06/2006 - 11:12h
Olá Roberson,
Parabéns pelo tutorial. Sou leigo no assunto e gostaria de saber como fazer um RSS de outros sites (de um site que eu gosto mas que ainda não tem um RSS)?
É que vi o Bruno Torres (http://www.brunotorres.net/) dizendo que fez um RSS pra alguns sites que ele gosta, aí fiquei curioso, pois achava que somente o dono do site poderia fazê-lo.
[2] Comentário enviado por robersonfox em 24/06/2006 - 19:01h
Caro Amigo Lipse,
posso estar até enganado, porém, acho que é impossível, se você notar, será necessário ter acesso ao banco de dados do servidor em questão, e te pergunto, qual webdesign faria isto, daria todos os dados para que outros pegassem dados do seu banco de dados, o que o o Bruno Torres deve ter feito é pego os rss's com um leitor tipo o rssowl.
[3] Comentário enviado por robersonfox em 24/06/2006 - 19:10h
Eu havia pedido a um moderador o qual não me recordo o nome para não colocar este artigo no ar por falta de um único parâmetro que não permitiria que este funcionasse, mas acredito que ele não recebeu o recado, mas então vai aí uma correção para o script em PHP acima.
[7] Comentário enviado por denes em 24/05/2007 - 16:11h
Olá, Roberson!
Parabéns pelo artigo. Simples e objetivo. Era exatamente o que eu estava procurando.
Gostaria de saber: é possível você ou o moderador fazer a correção mencionada acima 'header("Content-Type: text/xml");' no corpo do artigo? Ou um alerta no início dele? Às vezes lemos o artigo e não os comentários.
tks!