|
|
|
Yazan
|
Konu: XML => MySQL (Okunma Sayısı 175 defa)
|
emreunan
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 12
|
Merhabalar, Php yi öğrenmeye çalışıyorum ama gerçekten zormuş.Bir konuda daha yardımınıza ihtiyacım var. Xml verisinden haberleri çekip kendi mysql veritabanıma yazdırarak ordan kendi haber scriptimle yayınlamak istiyorum. Xml den veri çekip, database e yazdırabileceğim örnek uygulama konusunda yardımcı olursanız sevinirim. Sanırsam burdaki zorluk, ilk verileri çektikten sonra yeni veri olup olmadığını kontrol etmek ve yeni haber eklendiğinde sadece onu database e yazmak. Xml yi çekeceğim yer: http://www.ajansspor.com/rss/futbol_74.xmliyi çalışmalar, Emre Ünan umarım anlatabilmişimdir
|
|
|
|
|
Logged
|
|
|
|
tayfun_de
PHP Öğrencisi
Offline
Mesaj Sayısı: 104
|
selam, internetten buldugum asagidaki kod la rss-feed haberlerini görüntüleyebilirsin. <html> <head> <title> read-rss-feed </title> </head> <body> <dl> <?php
class RSSParser {
var $insideitem = false; var $tag = ""; var $title = ""; var $description = ""; var $link = "";
function startElement($parser, $tagName, $attrs) { if ($this->insideitem) { $this->tag = $tagName; } elseif ($tagName == "ITEM") { $this->insideitem = true; } }
function endElement($parser, $tagName) { if ($tagName == "ITEM") { printf("<dt><b><a href='%s'>%s</a></b></dt>", trim($this->link),htmlspecialchars(trim($this->title))); printf("<dd>%s</dd>",htmlspecialchars(trim($this->description))); $this->title = ""; $this->description = ""; $this->link = ""; $this->insideitem = false; } }
function characterData($parser, $data) { if ($this->insideitem) { switch ($this->tag) { case "TITLE": $this->title .= $data; break; case "DESCRIPTION": $this->description .= $data; break; case "LINK": $this->link .= $data; break; } } } }
$xml_parser = xml_parser_create(); $rss_parser = new RSSParser(); xml_set_object($xml_parser,&$rss_parser); xml_set_element_handler($xml_parser, "startElement", "endElement"); xml_set_character_data_handler($xml_parser, "characterData"); $fp = fopen("http://www.ajansspor.com/rss/futbol_74.xml","r") or die("Error reading RSS data."); while ($data = fread($fp, 4096)) xml_parse($xml_parser, $data, feof($fp)) or die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser))); fclose($fp); xml_parser_free($xml_parser);
?> </dl> </body> </html>
|
|
|
|
|
Logged
|
|
|
|
emreunan
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 12
|
Teşşekür ederim, yalnız Türkçe karakterlerin doğru çıkması, utf kodlamasını yerleştirdiğimde sayfa açılmıyor:(
|
|
|
|
|
Logged
|
|
|
|
|
 |
|