اليوم سنشرح جلب محتوى RSS من أي خلاصة أخبارية وحفظها في قاعدة البيانات بواسطة كلاس lastRSS وثم نقوم بعرضها بصفحة واحدة بشكل بسيط او نقوم بانشاء عناوين وصفحة لكل خبر او مقال
اولاً سنقوم بتحميل الكلاس من هـنـا
ثم سنقوم بإنشاء قاعدة البيانات وسيكون تكوينها كالآتي
وقمنا بإنشاء حقل id للخبر يقوم بالادخال التلقائي وهو مفتاح الاساس
وحقلين title , link من نوع varchar لعنوان الخبر ورابطه
وحقل content من نوع text لمحتوى التغذية
الآن سيكون ملف السكريبت يحتوي الآتي :
lastRSS.php : ملف الكلاس
db.php : ملف الاتصال بقاعدة البيانات
feed.php : ملف جلب الاخبار وإضافتها في قاعدة البيانات
show.php : ملف عرض عناوين الاخبار
news.php : ملف عرض الخبر في صفحة مستقلة
الان سنقوم بإنشاء ملف db.php للأتصال بقاعدة البيانات
في البداية قمنا باستدعاء ملف الكلاس وملف الاتصال بالقاعدة
ثم أنشأنا كائن lastRSS
ثم حددنا مسار الملف الذي سيخزن فيه الكاش وملف الكاش يحتاج إلى ترخيص 777
وقمنا بتحديد زمن تحديث الكاش بالثواني يفضل ان تكون 1200 على الأقل ما يساوي 20 دقيقة
ثم قمنا بتحديد رابط الخلاصة لجلب الأخبار منه باستخدام الكلاس
ثم نفحص القاعدة اذا كان يوجد خبر بهذا العنوان وإذا كان الخبر موجود سيتجاهله واذا لم يكن موجود سيقوم بإضافته
الان عند فتح ملف feed.php من المتصفح سيقوم بجلب الاخبار وإضافتها إلى قاعدة البيانات
الان إنشاء ملف show.php لعرض عناوين الاخبار
اذا اردت عرض كل خبر في صفحة مستقلة سنقوم بتعديل بسيط على صفحة show.php
اولاً سنقوم بتحميل الكلاس من هـنـا
ثم سنقوم بإنشاء قاعدة البيانات وسيكون تكوينها كالآتي
CREATE TABLE dig3st_rss (قمنا بإنشاء جدول اسمه dig3st_rss
id int(11) NOT NULL AUTO_INCREMENT,
title varchar(255) NOT NULL,
link varchar(255) NOT NULL,
content text NOT NULL,
PRIMARY KEY (id)
);
وقمنا بإنشاء حقل id للخبر يقوم بالادخال التلقائي وهو مفتاح الاساس
وحقلين title , link من نوع varchar لعنوان الخبر ورابطه
وحقل content من نوع text لمحتوى التغذية
الآن سيكون ملف السكريبت يحتوي الآتي :
lastRSS.php : ملف الكلاس
db.php : ملف الاتصال بقاعدة البيانات
feed.php : ملف جلب الاخبار وإضافتها في قاعدة البيانات
show.php : ملف عرض عناوين الاخبار
news.php : ملف عرض الخبر في صفحة مستقلة
الان سنقوم بإنشاء ملف db.php للأتصال بقاعدة البيانات
والان إنشاء ملف feed.php لجلب الاخبار ووضعها بقاعدة البيانات<?php $connectdb = @mysql_connect("localhost", "root", "123456") or die("خطأ في أتصال قاعدة البيانات"); @mysql_select_db("dig3st", $connectdb) ; ?>
<?php include "db.php"; include "lastRSS.php"; $rss = new lastRSS; $rss->cache_dir = '/cashe'; $rss->cache_time = 5000; if ($rs = $rss->get('http://www.dig3st.com/feed/')) { foreach ($rs['items'] as $item) { if (!mysql_fetch_array( mysql_query("SELECT id FROM `dig3st_rss` where `title` = '".$item['title']."'") )){ mysql_query("INSERT INTO `dig3st_rss` ( `title` , `link` , `content` ) VALUES ( '".$item['title']."', '".$item['link']."', '".$item['description']."' )"); } } } ?>
في البداية قمنا باستدعاء ملف الكلاس وملف الاتصال بالقاعدة
ثم أنشأنا كائن lastRSS
ثم حددنا مسار الملف الذي سيخزن فيه الكاش وملف الكاش يحتاج إلى ترخيص 777
وقمنا بتحديد زمن تحديث الكاش بالثواني يفضل ان تكون 1200 على الأقل ما يساوي 20 دقيقة
ثم قمنا بتحديد رابط الخلاصة لجلب الأخبار منه باستخدام الكلاس
ثم نفحص القاعدة اذا كان يوجد خبر بهذا العنوان وإذا كان الخبر موجود سيتجاهله واذا لم يكن موجود سيقوم بإضافته
الان عند فتح ملف feed.php من المتصفح سيقوم بجلب الاخبار وإضافتها إلى قاعدة البيانات
الان إنشاء ملف show.php لعرض عناوين الاخبار
والنتيجة<?php include "db.php"; $sql = @mysql_query("select * FROM `dig3st_rss` order by id desc"); while($row = mysql_fetch_object($sql)) { echo '<p> <a target="_blank" href="news.php?id='.$row->id.'"> '.$row->title.' </a><br /> </p>'; } ?>
اذا اردت عرض كل خبر في صفحة مستقلة سنقوم بتعديل بسيط على صفحة show.php
والآن أنشاء ملف news.php<?php include "db.php"; $sql = @mysql_query("select * FROM `dig3st_rss` order by id desc"); while($row = mysql_fetch_object($sql)) { echo '<p> <a target="_blank" href="news.php?id='.$row->id.'"> '.$row->title.' </a><br /> </p>'; } ?>
صورة من عرض الخبر في صفحة مستقلة<?php include "db.php"; $id = intval($_GET['id']); $news = mysql_query("SELECT * FROM dig3st_rss where id = '".$id."' "); $row = mysql_fetch_object($news); echo "<a href='".$row->link."'>".$row->title."</a>"; echo "<br /><hr />"; echo htmlspecialchars($row->content); ?>
” أفضل الصدقة أن يتعلم المسلم علما ثم يعلمه أخاه المسلم ،،