[PHP] شرح كيفية برمجة ملف تغذية rss ، من الصفر .

الموضوع في 'لغات البرمجة' بواسطة admin, بتاريخ ‏12 جوان 2013.

مشاركة هذه الصفحة

  1. admin

    • مدير المنتدى
    غير متصل
    عدد المشاركات: 4,388
    عدد المعجبين: 3,949
    نقاط الجوائز: 113
    الجنس: ذكر

    السلام عليكم ورحمة الله وبركاته
    الحمد لله والصلاة والسلام على محمد رسول الله وعلى آله وصحبه ومن والاه
    مرحبا بكم أعضاء و زوار منتديات قلب الجزائر .
    اليوم إن شاء الله سوف نقوم بشرح كيفية برمجة ملف rss للتغدية
    [​IMG]
    هذا الدرس سهل التعلم والتطبيق فقط قليل من التركيز لتخرج بعد الدرس بفائدة عظيمة إن شاء الله.
    درسنا يحتوي على النقاط التالية
    1. تعريف XML
    2. تعريف RSS
    3. فائدة RSS
    4. طريقة كتابة RSS
    5. برامج قراءة خلاصات RSS
    6. طريقة انشاء ملف PHP يحتوي على خلاصات RSS
    تعريف XML :
    تعريف RSS :
    تعتبر تقنية RSS من التقنيات الحديثة في عالم الإنترنت. كما أنها وبكل سهولة تستطيع متابعة اخر ما تم إضافته في المواقع، مما يفيد الزوار في المتابعة.
    فائدة RSS :
    للزائر :
    التعرف على آخر ما تم إضافته في مواقعك المفضلة.
    لصاحب الموقع :
    إمكانية إيصال المعلومة الجديدة في موقعك إلى الزوار دون زيارة موقعك وبعدها يقوم بالزيارة.
    طريقة كتابة RSS :
    الطريقة سهلة.
    أولاً: تُنشئ ملف بامتداد .xml ويكون هكذا galbdz.xml
    في أول الملف تكتب هذا السطر.
    كود:
    <?xml version="1.0" encoding="utf-8" ?>
    هنا قمت بجعل الترميز هو utf-8 ، كذلك المحرر الذي أكتب به الملف ترميزه utf-8 ، لذا يجب عليك الحذر من الخلط بين الترميز.
    حسنا بعدها سيكون هذا الكود
    كود:
    <rss version="2.0" >
     
    </rss>
    وداخله سيكون
    كود:
    <channel></channel>
    هذه تسمى قناة وداخلها تكون محتويات rss.
    الآن نجعل للملف عنوان ورابط وتعريف مختصر للملف، وكذلك التاريخ، وسيكون الملف مؤقتاً هكذا.
    كود:
    <?xml version="1.0" encoding="utf-8" ?>
    <rss version="2.0" >
    <channel>
      <title>إسم الخبر</title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر .</description>
    </channel>
    </rss
    وبعدها نضع كل خلاصة بين:
    كود:
    <item>الخلاصات هنا </item>
    وفي الأخير يكون الملف بهذا الشكل:


    كود:
    <?xml version="1.0" encoding="utf-8" ?>
    <rss version="2.0" >
    <channel>
      <title>إسم الخبر 1</title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر 1 . </description>
     
      <item>
      <title>إسم الخبر 2</title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر 2 .</description>
      </item>
     
      <item>
      <title>إسم الخبر 3</title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر 3 .</description>
      </item>
     
      <item>
      <title>إسم الخبر 4</title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر 4 .</description>
      </item>
    <channel>
    </rss>
    برامج قراءة خلاصات RSS :
    هناك برامج كثيرة يمكن تنصيبها على جهازك، ابحث في محركات البحث وستجدها بكثرة منها المجاني ومنها المدفوع. لكن هناك خدمة لجوجل قارئة الخلاصات واسمها Google Reader، يمكنك الدخول إلى الحساب إذا كان لديك حساب في بريد Gmail.
    طريقة إنشاء ملف PHP يحتوي على خلاصات RSS :
    الطريقة لا تختلف كثيراً ولكن ستزيل أول سطر وتعوّضه بسطر برمجي من لغة PHP
    سيكون الملف هكذا:
    كود:
    <?php
    header("content-type: text/xml;charset=utf-8");
    ?>
     
    <?xml version="1.0" encoding="utf-8" ?>
    <rss version="2.0" >
    <channel>
      <title>إسم الخبر 1</title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر 1 . </description>
     
      <item>
      <title>إسم الخبر 2</title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر 2 .</description>
      </item>
     
      <item>
      <title>إسم الخبر 3</title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر 3 .</description>
      </item>
     
      <item>
      <title>إسم الخبر 4</title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر 4 .</description>
      </item>
    <channel>
    </rss>
    لكن هناك مشكلة! المشكلة هي في استخراج آخر 5 نتائج من القاعدة، كيف؟
    الجواب سهل جداً، فقط ركز على هذا الكود وستعرف :

    كود:
    <?php
    header("content-type: text/xml;charset=utf-8");
    ?>
    <rss version="2.0" >
    <channel>
      <title>إسم الخبر </title>
      <link>http://galbdz.com</link>
      <pubDate>12.06.2013</pubDate>
      <description>وصف مختصر لمحتوى الخبر .</description>
     
      <?php
      include('config.php'); // ملف يحتوي على معلومات القاعدة والاتصال بها
      $table='articles'; // اسم الجدول
      // سيتم طلب حقول الآي دي (id) والعنوان والنص  والتاريخ وكون عدد النتائج آخر خمسة مواضيع تم اضافتهم
      $sql=mysql_query("select id,title,text,date from `".$table."` order by id desc limit 5");
      while( $row=mysql_fetch_array($sql) ){
      ?>
     
      <item>
      <title><?php echo $row['title']; ?></title>
      <link>http://galbdz.com/articles.php?id=<?php echo $row['id']; ?></link>
      <pubDate><?php echo $row['date']; ?></pubDate>
      <description>
      <?php echo $row['text']; ?>
      </description>
      </item>
     
      <?php } ?>
     
    <channel>
    </rss>

    يوجد مثال عن الدرس مرفق


    [​IMG]
    تحياتي للجميع
    بالتوفيق ...
     

    الملفات المرفقة:

    • demo.zip
      حجم الملف:
      2.2 ك. ب
      المشاهدات:
      10
    ouragh و وليد الهامل معجبون بهذا.
  2. بّنــوتة مّجـنــونّة

    • :: عضو مميـز ::
    غير متصل
    عدد المشاركات: 7,908
    عدد المعجبين: 5,866
    نقاط الجوائز: 113
    الجنس: أنثي

    شكـــــــــرآآآآآآ
     
    أعجب بهذه المشاركة M.Yasser
  3. وليد الهامل

    • ذ
    غير متصل
    عدد المشاركات: 5,461
    عدد المعجبين: 178
    نقاط الجوائز: 63
    الجنس: ذكر

    شكرا أخي ياسر على الشرح
    نتمنى الاستفآدة ،،
     
  4. ۩₩₭ ẵḿḭℜ۩

    • مشرف الأقسام العلمية
    غير متصل
    عدد المشاركات: 13,539
    عدد المعجبين: 9,382
    نقاط الجوائز: 113

    بارك الله فيك