goker

göker

cebeci

developer

edirne

goker.cebeci :: yaşam için hayata dair geliştirme çabaları :: Web Developer Olmak :: Anadolu Ajansı'ndan otomatik haber almak 2

Anadolu Ajansı'ndan otomatik haber almak 2

yazım: 21 Aralık 08 01:21 / güncelleme: 22 Aralık 08 18:23

Anadolu Ajansı haber paketi XML servisi ile otomatik haber almak ve yayınlamak

   İlk yazıda Anadolu Ajansı'ndan heber alan bir class yapımız vardı, şimdi bu class ile haber alıp yayınlamayı ele alacağız.

http://goker.cebeci.name/tr::blog::web_developer_olmak::anadolu_ajansi-ndan_otomatik_haber_almak

    Öncelikle haberleri kaydedeceğimiz tablo yapısını oluşturalım.

CREATE TABLE `contents` (
  `ID` int(11) NOT NULL auto_increment,
  `AAID` int(11) NOT NULL,
  `title` varchar(140) NOT NULL,
  `description` varchar(255) NOT NULL,
  `content` longtext NOT NULL,
  `date` datetime NOT NULL,
  `status` tinyint(1) NOT NULL,
  PRIMARY KEY  (`ID`),
  UNIQUE KEY `AAID` (`AAID`),
  KEY `date` (`date`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

   AAID, Anadolu Ajansı tarafından her habere verilen unique ID numarası, haberlerin tabloda iki defa kaydının (dublicate content) önüne geçmek için AAID'yi Unique Key yapıyoruz.

   Gelelim haberleri çekip veritabanına kaydedecek kodlara:

<?
include 'classAA.php';
AA::login();
// AA class'ı içinde tanımladığımız şekilde AA1.xml adında bir dosyaya haberleri kaydetmiş olacak.
if(is_file('AA1.xml')){
   $c = simplexml_load_file('AA1.xml'); // XML dosyasının içerğini obje olarak atadık.
   $connect = mysql_connect('localhost',[USER],[PASS]);
   mysql_select_db('AA',$connect);
   // obje olarak atadağımız içeriği AAID kontrolü yaparak veritabanına giriyoruz.
   foreach ($c->haber as $news){
   mysql_query(sprintf("INSERT INTO contents (AAID, title, description, content, date, status) 
   VALUES (%d,'%s','%s','%s','%s',1);",
   $news->haberid, 
   addslashes($news->baslik), 
   addslashes($news->baslik), 
   addslashes($news->icerik), $news->tarih.' '.$news->saat));
   }
   mysql_close($connect);
}
?>

   Şimdi de kaydettiğimiz haberleri güncelden geçmişe doğru listeleyelim:

<?
$connect = mysql_connect('localhost',[USER],[PASS]);
mysql_select_db('AA',$connect);
$q = mysql_query("SELECT * FROM contents ORDER BY date DESC"); 
while($news = mysql_fetch_object($q)):?>
<h2><?=$news->title?></h2>
<h3><?=$news->description?></h3>
<div><?=$news->content?></div>
<div><?=$news->date?></div>
<?endwhile;
mysql_close($connect);
?>

   ilk yazıya ulaşmak için, http://goker.cebeci.name/tr::blog::web_developer_olmak::anadolu_ajansi-ndan_otomatik_haber_almak

anadolu ajansı, aa, xml, haber, php, mysql
anahtar kelimeler: anadolu ajansı aa xml haber php mysql

Yorumlar

Sitede yer alan yorumlar, kullanıcıların kendi görüşleridir. Kullanıcı yorumlarından goker.cebeci sorumlu tutulamaz.

Yorum yazmak için üye girişi yapın.

loader

Web Developer Olmak

Web Developer'ın bitmeyen geliştirme çabaları.

Konular

fPlayer (1) Web Developer Olmak (25) Bilgisayar Dertleri (4) Genel (3) az LAf ÇOK iŞ (3) beN'im gözümden (1)
ubuntu server php5 powered mysql database mootools 1.2 w3c xhtml 1.1 w3c css
Sitedeki içerikler bilgi amaçlı olup, kullanımından doğacak sorunlardan göker.cebeci sorumlu tutulamaz.