创建自定义RSS馈送汇集器_PHP
丰富站点摘要馈送,它的缩写RSS更有名,它是XML如何对信息消费的方式产生主要影响的伟大范例。这种 XML术语是用于总结信息的一种流行格式,这种信息即:典型地、但不是专门面向新闻的数据,它包括标题、摘要、作者和发布日期。建立和分配RSS馈送变得日益流行,主要有几个原因:
·竞争:随着为客源竞争的Web站点数的持续增长,使他们的信息到达消费者的选择性方案也总是在考虑之中。
·信息超载:很明显,消费者发现他们越来越依赖于日益增长的Web 站点。那就是说,从一个站点到另一个站点的线性导航方式一点也没有削减他们的依赖性。浏览站点摘要而且不用常常转移图表、广告和附加的外来资料,是一个投资时间最少、迅速筛选所需信息的重要方法。
·普遍性: 基于XML的格式清楚的划分了数据和表达式,从而易于转换以广泛适应不同媒体分布出口(标准的Web浏览器、信元电话、纸张、电子邮件等等)的不同需求。
尽管RSS馈送的使用曾经归入精英之手,但这些日子他们似乎到处出现。Yahoo!,Christian Science Monitor、CNET News.com、和 The BBC 只是近来提供RSS馈送给他们的读者的Web站点中的几个而已。
注意:那些对RSS完全陌生的读者,请用一分钟时间装载Yahoo的技术馈送(http://rss.news.yahoo.com/rss/tech)到你的浏览器上。你可以迅速的认出组织良好的数据格式,它将自己借给了表达式的转换,这是XML术语的典型之处。对于这个论题的完整论述来说,就是在你喜爱的搜索引擎上实现快速搜索;你会找到的指南比你键盘操作得到的指南更多。
目录
Magpie RSS
RSS馈送
MySQL数据库
PHP 脚本
结论
在本文中,我将阐述如何使用PHP、MySQL 数据库服务器和 Magpie RSS parser来提供可自定义的RSS馈送服务给你的Web站点用户。尽管我希望你至少有使用PHP和MySQL 的基本经验,但对于初学者来说例子应该非常容易,以便于理解。因为你们中的大部分人可能不熟悉Magpie RSS Parser,我会就这个重要的工具提供一些额外的信息。
Magpie RSS
Magpie RSS Parser是在2002年晚期由Kellan Elliott-McCrea创建的,以确保他感知到的东西没有真正的基于PHP的RSS 汇集解决方案。结果就出现了一个极佳的可行工具,它可提供一群有用特征,其中包括:
·面向对象的设计:面向对象的、模块化的代码允许你毫不费力的将汇集特征集成到以前的应用上。
·极高的可配置性:Magpie的汇集和缓存行为很容易通过一个良好贯穿的配置策略来修改。
·馈送缓存:这个非常酷的特征可以本地缓存RSS馈送(到服务器上),从而保存带宽并且增强应用的性能
因为它是在GPL license下发布的,所以你不用掏钱,只要你愿意,并且遵守许可证的条款和条件,就可以自由使用这个软件。它只需要使用XML(expat) 支持编译的PHP (4.0+)的新版本。.
RSS馈送
让我们从应用的内容开始讨论。你喜欢提供哪种类型的RSS馈送给你的用户?找到RSS馈送就好像细读你喜爱的搜索引擎一样容易:只要输入"RSS" 和一些其他的选择主题如"technology," "science,"或者"sports."等等。对于一个偷懒的人来说(编程行业中没有不好的特性),通过Web. Feedster (http://www.feedster.com/)上弹出的许多RSS汇集器浏览也是我个人喜好之一。为了这篇指南,我将使用下列馈送:
·Yahoo! Top Stories (http://rss.news.yahoo.com/rss/topstories)
·MSDN, Recent Technical Articles (http://msdn.microsoft.com/rss.xml)
·Infoworld Latest News (http://www.infoworld.com/rss/news.rdf)
·PCWorld Latest News (http://rss.pcworld.com/rss/latestnews.rss)
·eWeek Technology News (http://rssnewsapps.ziffdavis.com/tech.xml)
你应该记住:有些RSS发布商需要许可后才允许你将它们的馈送用于商业用途。因此,在安装之前你永远要多看几遍任何使用条款。
请记下馈送位置、标题、和URL,你愿意的话还可以记录描述。在下一部分,我们将创建收藏这些信息的数据库表格。
MySQL数据库
为了实现我们的自定义RSS服务,只需要三个数据库表格。这部分,我将介绍这三个表格。
rssfeed
第一个表格rssfeed,将存储RSS馈送信息。为例子的简单起见,我们只存储三项:唯一的ID、标题和URL。在更为复杂的应用中,你可能存储其它细节,如描述、馈送添加到汇集器的日期、连续两次馈送检索之间的等待秒数、和其它相关信息。
mysql>CREATE TABLE rssfeed (
>rowID tinyint unsigned not null auto_increment,
>title varchar(150) not null,
>url varchar(150) not null,
>primary key(rowID)
>);
Table 1-1显示了添加所选择的RSS馈送之后的表格内容:
user
第二个表格user 存储关于使用该RSS汇集器的用户的信息。每一个用户只能有一个唯一标志,这样我们才能提供自定义服务;如果这样,每个用户可用一个简单的整数值来标记。在用户管理他自己首选的馈送并且浏览馈送之前需要登录,这样他的电子邮件和密码也会保存下来。为了安全起见,密码可作为一个由32个字符组成的不可取消的散列表保存。另外,就像rss 表格一样,在真实的应用中,该用户表格可变得更加复杂;但是,实现我们汇集机制的必要部分仍可在我们的表格中找到。
mysql>CREATE TABLE user (
>rowID smallint unsigned not null auto_increment,
>email varchar(55) not null,
>pswd varchar(32) not null,
>primary key(rowID)
>);
为了例子的简单起见,Table 1-2展示了存储在该表格内的用户信息示例:
Table 1-2: 用户信息示例
user_to_rss_feed
第三个表格user_to_rss_feed,将用户和他们选择的RSS馈送联系在一起。这个表格有两列组成:userid 和rssid。userid 标记用户;rssid标记RSS 馈送。
mysql>CREATE TABLE user_to_rss_feed (
>userid smallint unsigned not null auto_increment,
>rssid tinyint unsigned not null
>);
Table 1-3在我们的用户选择了他们喜爱的馈送之后提供了该表格内容的模拟。
Table 1-3: User/RSS 馈送映射
PHP 脚本
最后一个任务就是创建显示用户所选的RSS馈送的脚本。这个脚本的标题为myrss.php,他不可思议的简单,只包含两个主要组件:
·Login: 用户需要登录才能浏览他的自定义的馈送。这可以通过使用一个简单的表格和一些确认提供的电子邮件地址与密码的逻辑就可以完成了。
·RSS Aggregation and Delivery: 如果出现有效登录(或者有效会话;见下一段),我们将使用Magpie RSS Parser 来显示用户所选的RSS馈送。
要避免用户抱怨每次需要RSS "fix,"时都要重复登录,我使用了PHP的会话期处理特征。一旦成功的登录,用户的唯一标志符就作为会话期变量存储起来,以便于以后的检索。记住,存储期限完全取决于你如何配置你的PHP安装的会话期功能。
Listings 1-1 和1-2为两个组件都提供了注释码。两个组件都装配好并可用于浏览,浏览功能可通过在Listing 1-2结尾部分设置链接来实现。
Listing 1-1:登录组件
// Start or continue a session
session_start();
// Has the user
if (! isset($_SESSION['userid']))
{
if (! isset($_POST['email']))
{
echo "
} else {
mysql_connect("localhost","aggregator","secret");
mysql_select_db("rssfeeds");
$email = $_POST['email'];
$pswd = md5($_POST['pswd']);
$query = "SELECT rowID, email, pswd FROM user
WHERE email='$email' AND '$pswd'";
$result = mysql_query($query);
if (mysql_numrows($result) != 1)
{
echo "
Could not login!
";} else {
list($rowID, $email, $pswd) = mysql_fetch_row($result);
$_SESSION['userid'] = $rowID;
}
mysql_close();
} // end isset[email]
}
Listing 1-2. RSS汇集和呈送组件
if (isset($_SESSION['userid'])) {
require_once("rss_fetch.inc");
mysql_connect("localhost","aggregator","secret");
mysql_select_db("rssfeeds");
$userID = $_SESSION['userid'];
$query = "SELECT rss.title, rss.url
FROM rssfeed AS rss, user_to_rss_feed as userrss
WHERE userrss.userid='$userID'
AND rss.rowID=userrss.rssid";
$result = mysql_query($query);
while(list($title,$url) = mysql_fetch_row($result))
{
$url = "$url";
$rss = fetch_rss( $url );
echo "" . $rss->channel['title'] . "
";
echo "
- ";
- $title ";
foreach ($rss->items as $item)
{
$href = $item['link'];
$title = $item['title'];
echo "
}
echo "
}
mysql_close();
}
View the complete script here
Figure 1-1 显示了登录表格。
Figure 1-2 描述了请求的RSS馈送的一个典型显示。
结论
欢迎提问和评论!电子邮件可发至: jason@wjgilmore

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











소셜 미디어의 급속한 발전으로 Xiaohongshu는 가장 인기 있는 소셜 플랫폼 중 하나가 되었습니다. 사용자는 Xiaohongshu 계정을 만들어 자신의 개인 신원을 표시하고 다른 사용자와 소통하고 상호 작용할 수 있습니다. 사용자의 Xiaohongshu 번호를 찾으려면 다음의 간단한 단계를 따르세요. 1. Xiaohongshu 계정을 사용하여 사용자를 찾는 방법은 무엇입니까? 1. Xiaohongshu 앱을 열고 오른쪽 하단에 있는 "검색" 버튼을 클릭한 다음 "메모" 옵션을 선택합니다. 2. 노트 목록에서 찾고자 하는 사용자가 게시한 노트를 찾아보세요. 클릭하시면 메모 세부정보 페이지로 이동합니다. 3. 노트 상세페이지에서 해당 사용자의 아바타 아래 '팔로우' 버튼을 클릭하여 해당 사용자의 개인 홈페이지로 진입합니다. 4. 이용자 개인 홈페이지 우측 상단의 점 3개 버튼 클릭 후 '개인정보' 선택

1. 예시처럼 새 PPT 파일을 만들고 이름을 [PPT Tips]로 지정합니다. 2. [PPT 팁]을 더블클릭하여 PPT 파일을 엽니다. 3. 예를 들어 행 2개와 열 2개로 구성된 표를 삽입합니다. 4. 테이블 테두리를 더블클릭하면 상단 툴바에 [디자인] 옵션이 나타납니다. 5. [음영] 옵션을 클릭한 후 [그림]을 클릭하세요. 6. [그림]을 클릭하면 그림을 배경으로 채우기 옵션 대화 상자가 나타납니다. 7. 디렉토리에서 삽입하려는 트레이를 찾은 후 확인을 클릭하여 그림을 삽입하세요. 8. 테이블 상자를 마우스 오른쪽 버튼으로 클릭하여 설정 대화 상자를 불러옵니다. 9. [셀 서식]을 클릭하고 [이미지를 음영으로 배열]을 선택하세요. 10. [중앙], [미러] 및 기타 필요한 기능을 설정한 후 확인을 클릭하세요. 참고: 기본값은 테이블에 그림을 채우는 것입니다.

Ubuntu 시스템에서는 루트 사용자가 일반적으로 비활성화되어 있습니다. 루트 사용자를 활성화하려면 passwd 명령을 사용하여 비밀번호를 설정한 다음 su- 명령을 사용하여 루트로 로그인할 수 있습니다. 루트 사용자는 무제한 시스템 관리 권한을 가진 사용자입니다. 그는 파일, 사용자 관리, 소프트웨어 설치 및 제거, 시스템 구성 변경에 액세스하고 수정할 수 있는 권한을 가지고 있습니다. 루트 사용자와 일반 사용자 사이에는 분명한 차이가 있습니다. 루트 사용자는 시스템에서 가장 높은 권한과 더 넓은 제어 권한을 갖습니다. 루트 사용자는 일반 사용자가 할 수 없는 중요한 시스템 명령을 실행하고 시스템 파일을 편집할 수 있습니다. 이 가이드에서는 Ubuntu 루트 사용자, 루트로 로그인하는 방법, 일반 사용자와 어떻게 다른지 살펴보겠습니다. 알아채다

능숙하게 양식을 작성할 수 있다는 것은 회계, 인사, 재무에 필요한 기술일 뿐만 아니라 많은 영업사원에게도 매우 중요합니다. 왜냐하면 매출과 관련된 데이터는 매우 크고 복잡하며, 문제를 설명하기 위해 단순히 문서에 기록할 수는 없기 때문입니다. 더 많은 영업사원들이 엑셀을 능숙하게 활용하여 테이블을 만들 수 있도록 편집자가 판매예측에 관한 테이블 만들기 이슈를 소개합니다. 1. [매출 예측 및 목표 설정], xlsm을 열어 각 테이블에 저장된 데이터를 분석합니다. 2. 새로운 [빈 워크시트]를 생성하고 [셀]을 선택한 후 [라벨 정보]를 입력하세요. 아래로 [드래그]하여 달을 [채우세요]. [기타] 데이터를 입력한 후 [

1. 워크시트를 열고 [시작]-[조건부 서식] 버튼을 찾습니다. 2. 열 선택을 클릭하고 조건부 서식을 추가할 열을 선택합니다. 3. [조건부 서식] 버튼을 클릭하면 옵션 메뉴가 나타납니다. 4. [조건부규칙 강조]-[사이]를 선택하세요. 5. 20, 24, 진한 녹색 텍스트와 어두운 채우기 색상 규칙을 입력합니다. 6. 확인 후, 선택한 열의 데이터는 설정에 따라 해당 숫자, 텍스트 및 셀 상자로 색상이 지정됩니다. 7. 충돌하지 않는 조건부 규칙은 반복적으로 추가할 수 있지만, 충돌하는 규칙의 경우 WPS는 이전에 설정된 조건부 규칙을 마지막에 추가된 규칙으로 대체합니다. 8. [사이] 규칙 20-24 및 [보다 작음] 20 뒤에 셀 열을 반복적으로 추가합니다. 9. 규칙을 변경해야 하는 경우 규칙을 삭제한 다음 규칙을 재설정하면 됩니다.

제목: Realme Phone 초보자 가이드: Realme Phone에서 폴더를 만드는 방법은 무엇입니까? 현대 사회에서 휴대폰은 사람들의 삶에 없어서는 안 될 도구가 되었습니다. 인기 스마트폰 브랜드인 Realme Phone은 간단하고 실용적인 운영 체제로 사용자들에게 사랑을 받고 있습니다. Realme 휴대폰을 사용하는 과정에서 많은 사람들이 휴대폰에 있는 파일과 애플리케이션을 정리해야 하는 상황에 직면할 수 있는데, 폴더를 만드는 것이 효과적인 방법입니다. 이 기사에서는 사용자가 휴대폰 콘텐츠를 더 잘 관리할 수 있도록 Realme 휴대폰에서 폴더를 만드는 방법을 소개합니다. 아니요.

때때로 Word 테이블에서 계산 문제가 발생하는 경우가 많습니다. 일반적으로 이러한 문제가 발생하면 대부분의 학생들은 계산을 위해 Word 테이블을 복사하고 일부 학생들은 자동으로 계산기를 사용합니다. 빨리 계산하는 방법이 있나요? 물론, 실제로 합계는 Word에서도 계산할 수 있습니다. 그럼 어떻게 하는지 아시나요? 오늘은 함께 살펴보시죠! 더 이상 고민하지 말고, 도움이 필요한 친구들은 빨리 수집해야 합니다! 단계 세부사항: 1. 먼저 컴퓨터에서 Word 소프트웨어를 열고 처리해야 하는 문서를 엽니다. (그림 참조) 2. 다음으로 합산된 값이 있는 셀에 커서를 놓고(그림 참조) [메뉴 모음]을 클릭합니다.

많은 친구들이 Gree+ 소프트웨어에서 가족을 만드는 방법을 알고 싶다고 말했습니다. 자세한 내용을 알고 싶은 친구들은 저와 함께 살펴보세요. 먼저 휴대폰에서 Gree+ 소프트웨어를 열고 로그인하세요. 그런 다음 페이지 하단의 옵션 표시줄에서 맨 오른쪽에 있는 "내" 옵션을 클릭하여 개인 계정 페이지로 들어갑니다. 2. 내 페이지에 접속한 후 "가족" 아래에 "가족 만들기" 옵션이 있습니다. 찾은 후 클릭하여 들어갑니다. 3. 다음으로 가족을 생성하는 페이지로 이동하여 프롬프트에 따라 입력 상자에 설정할 가족 이름을 입력하고 입력 후 오른쪽 상단의 "저장" 버튼을 클릭합니다. 4. 마지막으로 페이지 하단에 "저장 성공" 메시지가 나타나 패밀리가 성공적으로 생성되었음을 나타냅니다.
