Php Mysql to XML
Bu yazımda mysql veri tabanından verileri xml standartlarında dosya oluşturması konusunda yardımcı olmaya çalışacağım.
$dosya_adi = "deneme.xml"; // Oluşturulacak Dosya Adı $host = "localhost"; //mysql adresiniz $user = "kullaniciadi"; //veritabanı kullanıcı adı $pass = "sifre"; //veritabanı kullanıcı şifresi $database = "veritabani_adi"; //veritabanı adı $linkID = mysql_connect($host, $user, $pass) or die("Veritabanına bağlanılamadı."); //bağlantı kuruluyor mysql_select_db($database, $linkID) or die("Veritabanı bulunamadı."); $resultID = mysql_query($query, $linkID) or die("Veri bulunamadı."); $xml_output = "<?xml version=\"1.0\" encoding=\"iso-8859-9\"?>\n"; //xml dil kodlaması belirleniyor veritabanı karakter setiyle aynı olmalı,aksi halde web sayfasında görüntülerken hata alırsınız. $xml_output .= "<Ogrenciler>\n"; //ilk xml etiketiyle başlığı açıyoruz for($x = 0 ; $x < mysql_num_rows($resultID) ; $x++){ $row = mysql_fetch_assoc($resultID); //Veritabanında kaç satır olduğunu öğrenerek tüm satırlar için işlem yapmasını istediğimizi belirtiyoruz. $xml_output .= "\t\t<isim>". $row['isim'] ."</isim>\n"; //isim etiketinin içine veritabanındaki isim alanının verilerini doldurtuyoruz. $xml_output .= "\t\t<soyisim>". $row['soy_isim'] ."</soyisim>\n"; //aynı şekilde soy_isim alanı için $xml_output .= "\t\t<okulno>". $row['okul_no'] ."</okulno>\n"; //aynı şekilde okul_no alanı için } $xml_output .= "</Ogrenciler>"; // başta açtığımız etiketi kapatıyoruz. $yaz=fopen($dosya_adi, "w"); //en başta belirlediğimiz isimde bir dosya yaratıyoruz. fwrite($yaz,$xml_output); //veritabanından gelen bilgileri açtığımız dosyaya yazdırıyoruz. fclose($yaz); //yazma işlemini kapatıyoruz.
Bu yapıyı geliştirerek mysql veritabanınızdaki datalarınızı xml standartlarına dönüştürebilirsiniz.
Oluşması Gereken Sonuç :
<?xml version=”1.0″ encoding=”iso-8859-9″?>
<Ogrenciler>
<isim>Suphi Özgür</isim>
<soyisim>CANKURT</soyisim>
<okulno>2405010033</okulno>
</Ogrenciler>
Saygılarımla,




boşa zaman harcattın…. baştan başa fiyasko…. /// ler ile \\\ ler hataya neden oluyor yanlış kodlanmış.
kusura bakmayın soner bey.// açıklama taglarını kodun hangi bölümde ne işe yaradığını, mantığını da anlaşılması için ekledim.
Kodu birkez daha kontrol edip düzenlemeler yapacağım.
Saygılar,
hocam ALLAH sizden razı olsun bu çalışmanızı bira değiştirdim yaptım.
ALLAH sizden binlerce kez razı oldusun.
yaptığım kodlama
<?php
$dosya_adi = “yazilar.xml”;
$host = “localhost”;
$user = “root”;
$pass = “hasokeyk”;
$database = “deneme”;
$tablo = “ogrenciler”;
$linkID = @mysql_connect($host, $user, $pass) or die(”Veritabanına bağlanılamadı.”);
@mysql_select_db($database, $linkID) or die(”Veritabanı bulunamadı.”);
$resultID = mysql_query(”SELECT * FROM $tablo”) or die(”Veri bulunamadı.”);
$xml_output = “\n”;
$xml_output .= “\n”;
if($resultID!=0){
for($x = 0 ; $x < @mysql_num_rows($resultID) ; $x++){
$row = @mysql_fetch_assoc($resultID);
$xml_output .= “\t\t”. $row['yazi'] .”\n”;
}
$xml_output .= “”;
$yaz=fopen($dosya_adi, “w”);
fwrite($yaz,$xml_output);
fclose($yaz);
echo $dosya_adi.” başarıyla yazıldı”;
}
?>
hocam çok güzel açıklamalar yapmışsınız kodda ufak tefek yerler var ama az buçuk bilen bunu anlar zaten çok teşekkürler güzel bir kaynak oldu…