عرض مشاركة واحدة
عضو نشيط
تاريخ التسجيل: Jun 2007-
#14 (permalink)  



اقتباس:
{2}

طريقة اخرى لعمل rss بملف xml

وهو منقول عن الاخ amine وقمت بتعديل بسيط عليه حتى يناسب الجميع ويكون سهل للشرح
1- انشا مجلد rss مثلا
2- نحن نحتاج لعمل ملف .htaccess ، داخل مجلد rss واضافة هذا السطر فيه ...
AddType application/x-httpd-php .xml
و بهذا جعلنا كل ملف XML يعمل كملف PHP ...
لا تقتصر هذا على ملفي PHP و XML فقط ، بل يمكنك إستخدام هذه الطريقة مثلا لتحويل ملفات الـ HTML إلى PHP ...
3- نقوم بعمل ملف XML عادي ( اي بامتداد XML ) ، و نكتب أول سطر ...
كود PHP:
<? header('(anti-spam-(anti-spam-content-type:)) text/xml'); ?>

لقد إستخدمنا هنا وسم PHP ، و هذا لأننا جعلنا بالأعلى كل ملف XML يعمل كملف PHP ...
و الآتي هو أهم ما يمكن وضعه بالأعلى ( للعلم يمكنك وضع أوسمة أخرى ) ...

كود PHP:
[size=3][font=Times New Roman]<rss version="2.0">
[
size=3][font=Times New Roman]<channel>[/font][/size]
[
size=3][font=Times New Roman]<title>ضع العنوان عنا</title>[/font][/size]
[
size=3][font=Times New Roman]<description>...</description>[/font][/size]
[
size=3][font=Times New Roman]<link>ضع رابط موقعك هنا</link>[/font][/size]
[
size=3][font=Times New Roman][/font][/size
السطر الأول به تعريف لنسخة الـ RSS ...
السطر الثاني إفتتاح للعمل ...
السطر الثالث هو عنوان الموقع و أسفل منه وصف للموقع و أسفله رابط الموقع ...
الان ضع هذه الاوامر وعدل البيانات حسب بيانات قاعدة بيانات موقعك

كود PHP:
[size=3][font=Times New Roman]<?[/font][/size]
[
size=3][font=Times New Roman]$dbhost 'localhost';[/font][/size]
[
size=3][font=Times New Roman]$dbuname 'root';[/font][/size]
[
size=3][font=Times New Roman]$dbpw '';[/font][/size]
[
size=3][font=Times New Roman]$dbname 'rss';[/font][/size]
[
size=3][font=Times New Roman]$conn = @mysql_connect($dbhost ,$dbuname ,$dbpw ordie('error');[/font][/size]
[
size=3][font=Times New Roman]mysql_select_db($dbname ,$conn) or die('error'); [/font][/size]
[
size=3][font=Times New Roman][/font][/size]
نقوم بتنفيذ هذا الكود للاستعلام من القاعدة عن الحقول التى نريد عرضها طبعا هنا افتراضى id و title و content يمنكنك استبدالهم او اضافة شىء اليهم
كود PHP:
[size=3][font=Times New Roman]$query=mysql_query("SELECT `id`, `title`, `content` FROM topics ORDER BY `id` DESC LIMIT 0,5");[/font][/size]
[size=3][font=Times New Roman]while($result = mysql_fetch_array($query)){[/font][/size]
[size=3][font=Times New Roman]?>[/font][/size]
[size=3][font=Times New Roman]<item>[/font][/size]
[size=3][font=Times New Roman]<title><?=htmlentities(strip_tags($result['title'])); ?></title>[/font][/size]
[size=3][font=Times New Roman]<description> <?=htmlentities(substr($result['content'],0,60));?></description>[/font][/size]
[size=3][font=Times New Roman]<link>http://www.site.com/news.php?id=<?=$result['id'];?></link>[/font][/size]
[size=3][font=Times New Roman]</item>[/font][/size]
[size=3][font=Times New Roman]<? ?>[/font][/size]
[size=3][font=Times New Roman][/font][/size]
طبعا انت تستبدل http://www.site.com/news.php?id= بما يناسب موقعك
نضع كل المحتوى بين وسمي <item> الإفتتاحي و الختامي و هو ما يمثل إدراجا واحدا و بداخله عنوان الموضوع في الوسم <title> و الوصف <description> الذي سيظهر في حالتنا على أنه جزء من المحتوى لأننا إستخدمنا الدالة SUBSTR و حددنا عدد الحروف بـ 60 ، ثم رابط الموضوع الكامل <link> و الذي سيذهب إليه الزائر بعد الضغط على عنوان الموضوع ، ثم نغلق حلقة التكرار ... و بهذا سيتكرر المحتوى الواقع بين وسمي <item> الإفتتاحي و الختامي خمس مرات ...
و في النهاية نغلق وسم العمل و وسم الـ RSS
[PHP]</channel>
</rss>[/PHP]

واخيرا انتهيت من نقل الشرح مع بعض التعديل عليه واذا كان لكم اى استفسار فارحب به
بارك الله فيك اخوي ما قصرت
لكن ممكن هذا الكود كاملا ؟
دمته بود
[/size][/font]






__________________
لا تكن ظالماً لنفسك فاليوم عمل ولا حساب |.| وغداً حساب ولا عمل
بيت العنكبوت غير متواجد حالياً   قديم 22-12-2007, 02:06 AM
رد مع اقتباس