Skip to main content

Min feed

2 Sep 2008 - feed, php, rss
Jag har på förstasidan haft vad jag kallat för "feed" på sistone. Jag kom på att oftast så orkar man inte pränta ned det man kanske tycker är intressant för stunden bara för att det tar för lång tid, samt att man allt som oftast vill tipsa er om någon sida eller bild kanske, utan att för den skull skriva en helt ny blogg, som här. Nej, jag kände att jag skulle vilja ha en lite enklare kanal för smågrejer.

Det jag delar med mig av i min "feed" är:

Det jag också vill ha med är videos på youtube som jag sätter som favorit, men den feed:en innehåller tyvärr inte information om när jag satte den som favorit, bara när själva videon lades upp, tyvärr. Ska klura vidare på det vid tillfälle.
Så, hur gör man detta på enklaste sätt då? Ja, förutom för vissa saker så är det ju RSS-flöden som är enkla att ladda ned och läsa och sedan lägga in. Först så skapar jag en funktion som antingen lägger upp en ny post i databasen, om den är unik, så den gör en liten test först
function feed($source, $what, $time, $image = false, $link = false, $desc = false) {
  $q = mysql_query("select count(id) from mydb.feed where type = '$source' and title = '" . sqlesc($what) . "' and date = '" . sqlesc($time) . "'") or print mysql_error();
  list($count) = mysql_fetch_array($q);
  if ($count == 0) {
    mysql_query("insert into mydb.feed (type, title, date, image, link, description) values ('$source', '" . sqlesc($what) . "', '" . sqlesc($time) . "', '$image', '" . sqlesc($link) . "', '" . sqlesc($desc) . "')") or print mysql_error();
  }
}
function sqlesc($str) {
  return mysql_real_escape_string(stripslashes($str));
}
Ok, så nu ska vi ta ned lite info från någon källa, och jag fick en fråga om hur jag gjorde med min Twitter-info så jag tänkte ta den som exempel. Så här ser det ut:
require_once("RSS.php");
$url = "http://twitter.com/statuses/user_timeline/.rss";
$rss = new XML_RSS($url);
$rss->parse();
foreach($rss->items as $r){
  $r["title"] = trim(utf8_decode($r["title"]));
  $r["title"] = preg_replace("/^USERNAME: /", "", $r["title"]); # Ta bort ditt username från twittern
  $r["pubdate"] = date("Y-m-d H:i", strtotime($r["pubdate"]));
  if (preg_match("/^@/", $r["title"])) continue; # Hoppa över när jag svarar på någon
  feed("twitter", $r["title"], $r["pubdate"], false, $r["link"]);
}
Detta kräver att du använder dig av RSS-parsern från pear för att läsa in XML-koden. Sen går du bara igenom alla poster i RSS-feeden och lägger till dom med feed(), som ju bara lägger till i databasen om det är en ny post.
Nu är det bara att hitta RSS-flöden som har med dig att göra så gör du samma sak med dom. Happy feeding!
Mer i Tutorials
Bygg MySQLqueries automatiskt
Mail Processing
Snygga till rubrikerna med jQuery
Min feed
Fixa transparenta PNGbilder i Internet Explorer 6
Rkna tid med PHP
Dlj emailadresser fr spamrobotar
Nyckelord: feed, php or rss
OAuth fungerar inte
Hur nya iPaden stller till det p webben
Layoutmotor fr Atlas
Min feed
Times
Hemma Bäst
Utebar: Pergola
Hemma Bäst
Utebar: Kylskåp och barstolar
Hemma Bäst
Utebar: Skåpdörrar
Arkad- och flipperkabinett
Robotar
Nordic: The Musical
Blodsbröder
Nordic: The Musical
Midgård
Nordic: The Musical
Himlen brinner
Nordic: The Musical
Gudarnas spel
Nordic: The Musical
Oändlig kärlek
Ljussabel-projektet
Hemma Bäst
Skåp till Ute-TV
Thåström i Globen
Bröllopspresent
Födelsedagspresent
Thåström
Nordic: The Musical
Kunskapens pris
Nordic: The Musical
Livets träd
Nordic: The Musical
Allting börjar alltid någonstans
Nytt projekt på gång: Ljussablar som ljuskälla
Hemma Bäst
Hemmaspa: Hemma-Spa klart!
Alien: Romulus
Hemma Bäst
Utebar: Utebaren klar!
Hemma Bäst
Utebar: Börjar likna en bar!
Hemma Bäst
Utebar: Reglar på plats
Hemma Bäst
Utebar: Rivning pågår!
Mjölner!
Hemma Bäst
Utebar: Utebar!
Mixtejp
Norrsken
Kan ha "råkat" skaffa något på Sci-Fi-mässan
Hemma Bäst
Hemmaspa: Det börjar ta form med hemma-spa:et
Rostfärg och IKEA-lampa
Myst Book
Create a physical book from my digital book
Myst Book
Survey Island
Myst Book
Someone is trying to sell my map!
Julkalender
Myst Book
Myst book updated
Ny tatuering - midgårdsormen!
Minnestal till en kaffekopp
Förlovade
Ny nummerskylt för huset
Fix i husbilen
Grubbelgubbe
Hemma Bäst
Verkstad: Uppdateringar i verkstaden!
Måla med rostfärg
Vårfix i trädgården
Jung Kook
Pappaskämt och annan humor
Bilder på spelbordet när det används