• 15-07-2014, 23:11:24
    #1
    Merhabalar,

    Herhangi bir Rss kaynağından veri çekerek onun üzerinde düzenlemeler yapıp onu tekrardan yeni bir rss kaynağına dönüştürmek istiyorum. Bunu nasıl sağlayabilirim?

    Aşağıdaki gibi bir kod geliştirdim ama bununla da kaynağa ekleme yapamadım bir türlü, hep orjinal metni basıyor nedense?

    <?php   
        
       header("Content-type: text/xml; charset=utf8"); 	
       echo '<?xml version="1.0" encoding="utf-8"?>
    		<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
    		<channel>
    			<title>DİNLEBENİ.NET</title>
    			<link>http://www.dinlebeni.net</link>
    			<language>tr</language>
    			<description>Rss Kaynağından Bilgi Çeker</description>
    			<generator>Deyzi 2014</generator>
    		';
    	  
    		$xml=simplexml_load_file('http://www.izlesene.com/rss/kategori/muzik');		
    		
    		foreach($xml as $rss){
    		$i=0;
    		$title= $rss->item->title ;
    
    			foreach($rss->item as $bolum){
    
    			$baslik= $bolum->title;
    			$aciklama=$bolum->description;
    			$link=$bolum->link;  
    			$tarih=$bolum->pubDate;		
    			
    			echo '<item>
    					<title><![CDATA['.strip_tags($baslik[$i]).']]></title>
    					<guid isPermaLink="true">www.dinlebeni.net</guid>
    					<description>DINLEBENI.NET | <![CDATA['.strip_tags($aciklama[$i]).']]>DINLEBENI.NET | Amatör müzik dinle, amatör müzik indir, amatör müzikler dinle, amatör şarkılar dinle</description>
    					<pubDate>'.$tarih[$i].'</pubDate>
    					<link>'.$link[$i].'</link>				
    					<dc:creator>dinlebeni.net</dc:creator>					
    				 </item>
    				 ';		
    			}
    		}
    		$i++; 
    	  	  
    		echo '<footer>COPYRIGHT 2014</footer>
    			  </channel>
    			  </rss>
    			 ';
    	  
    	  
    ?>


    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 23:11:24 -->-> Daha önceki mesaj 23:09:38 --

    Bu kodda <description></description> kısmına link yerleştiriyorum ama eklediğim yerde hala eski içerik ekleniyor. Bunu düzenlemenin bir yolu yok mu acaba?
  • 15-07-2014, 23:45:52
    #2
    herhangi bir sorun göremedim ben. olması gerekiyor. <description>DINLEBENI.NET | kısmı yazmıyor mu?
  • 16-07-2014, 01:15:03
    #3
    explorerda görüntülediğimde eklediğim linki yazıyor, fakat rss ten facebook 'a bu içerikleri yolladıgımda ise sanki ben kodu hiç düzenlememişim gibi orjinal veriyi ekliyor. Nasıl oluyor bende anlam veremedim, acaba kodlarda mı hata yapıyorum diye düşünmüştüm.
  • 16-07-2014, 02:04:13
    #4
    yeni url yi gönderdiğinizden emin olun
  • 16-07-2014, 02:40:41
    #5
    Üyeliği durduruldu
    Bu dosyada mı hata yok ?

    1 - RSS te XML tagına gerek yok.
    2 - UTF-8 XML ve rss te iso-8859-9 karakter setini kullanırsanız encoding hatası verir.
    3 - <dc: şeklinde tag verdiğinizde bunun daha önce tanımlanmış olması gerekiyor.
    4 - for döngüsünde $i $i++ şeklinde gereksiz değişkenler kullanılmış..
    vs. v.s.

    Buyrun düzelttim.
    header("Content-type: text/xml; charset=utf8");
    $title = iconv("ISO-8859-9","UTF-8", "DİNLEBENİ.NET"); 
    $description = iconv("ISO-8859-9","UTF-8","Rss Kaynağından Bilgi Çeker");
    echo '
    <rss version="2.0">
    <channel> 
    <title>'.$title.'</title> 
    <link>http://www.dinlebeni.net</link> 
    <language>tr</language> 
    <description>'.$description.'</description> 
    <generator>Deyzi 2014</generator> '; 
    $xml=simplexml_load_file('http://www.izlesene.com/rss/kategori/muzik');         
    foreach($xml as $rss){ 
    $title= $rss->item->title ; 
    foreach($rss->item as $bolum){ 
    $baslik= $bolum->title; 
    $aciklama=$bolum->description; 
    $link=$bolum->link;   
    $tarih=$bolum->pubDate;
    $baslik = iconv("ISO-8859-9","UTF-8", $baslik); 
    $aciklama = iconv("ISO-8859-9","UTF-8", "DINLEBENI.NET | <![CDATA[".$aciklama."]]>DINLEBENI.NET | Amatör müzik dinle, amatör müzik indir, amatör müzikler dinle, amatör şarkılar dinle");          
    echo '
    <item> 
    	<title><![CDATA['.strip_tags($baslik[$i]).']]></title> 
    	<guid isPermaLink="true">www.dinlebeni.net</guid> 
    	<description>'.$aciklama.'</description> 
    	<pubDate>'.$tarih.'</pubDate> 
    	<link>'.$link.'</link>                 
    	<creator>dinlebeni.net</creator>                     
    </item> ';         
    } 
    } 
    echo '<footer>COPYRIGHT 2014</footer> 
    </channel> 
    </rss>';
  • 16-07-2014, 02:53:19
    #6
    Ben php kısmını çalışacağı konusunda hata yok dedim. <description>DINLEBENI.NET | kısmı yazmıyor demiş ama yazmayacaksa devamı da yazmazdı yani
    Dediklerinin hepsi haftadır haklısınız.
  • 16-07-2014, 02:58:10
    #7
    Üyeliği durduruldu
    devamı yazmaz zaten hocam. nerde encode hatası varsa orda keser rss te bu yüzden hata verir.
  • 16-07-2014, 08:14:45
    #8
    Arkadaş devamı yazmıyor dememiş ama benim eklediğim kısımlar yazmıyor demiş.
  • 30-07-2014, 05:14:17
    #9
    GlobalYazilim adlı üyeden alıntı: mesajı görüntüle
    Bu dosyada mı hata yok ?

    1 - RSS te XML tagına gerek yok.
    2 - UTF-8 XML ve rss te iso-8859-9 karakter setini kullanırsanız encoding hatası verir.
    3 - <dc: şeklinde tag verdiğinizde bunun daha önce tanımlanmış olması gerekiyor.
    4 - for döngüsünde $i $i++ şeklinde gereksiz değişkenler kullanılmış..
    vs. v.s.

    Buyrun düzelttim.
    header("Content-type: text/xml; charset=utf8");
    $title = iconv("ISO-8859-9","UTF-8", "DİNLEBENİ.NET"); 
    $description = iconv("ISO-8859-9","UTF-8","Rss Kaynağından Bilgi Çeker");
    echo '
    <rss version="2.0">
    <channel> 
    <title>'.$title.'</title> 
    <link>http://www.dinlebeni.net</link> 
    <language>tr</language> 
    <description>'.$description.'</description> 
    <generator>Deyzi 2014</generator> '; 
    $xml=simplexml_load_file('http://www.izlesene.com/rss/kategori/muzik');         
    foreach($xml as $rss){ 
    $title= $rss->item->title ; 
    foreach($rss->item as $bolum){ 
    $baslik= $bolum->title; 
    $aciklama=$bolum->description; 
    $link=$bolum->link;   
    $tarih=$bolum->pubDate;
    $baslik = iconv("ISO-8859-9","UTF-8", $baslik); 
    $aciklama = iconv("ISO-8859-9","UTF-8", "DINLEBENI.NET | <![CDATA[".$aciklama."]]>DINLEBENI.NET | Amatör müzik dinle, amatör müzik indir, amatör müzikler dinle, amatör şarkılar dinle");          
    echo '
    <item> 
    	<title><![CDATA['.strip_tags($baslik[$i]).']]></title> 
    	<guid isPermaLink="true">www.dinlebeni.net</guid> 
    	<description>'.$aciklama.'</description> 
    	<pubDate>'.$tarih.'</pubDate> 
    	<link>'.$link.'</link>                 
    	<creator>dinlebeni.net</creator>                     
    </item> ';         
    } 
    } 
    echo '<footer>COPYRIGHT 2014</footer> 
    </channel> 
    </rss>';
    Merhaba Hocam,

    Burada vermiş olduğunuz kodlar çalışıyor ama karakterler bozuk görünüyor, onu nasıl düzeltebiliriz?

    Ayrıyetten akış hatası da alıyorum akillitv videolarını çektirirken?