Les Expert Csi
UK archaeologists' email directory Individuals and organizations conducting archaeology in the UK, sponsored by the
Council for British Archaeology.
ArtsLivres : le meilleur de la culture sur le web Revue bimensuelle d'actualité culturelle, politique et scientifique : interviews
approfondies, articles de fond, expositions, chroniques de livres, CD et DVD.
China solar energy and solar photovoltaic industry information ... Language translation services dedicated to energy, IT, and international trade
industries in China.
Daniel Dae Kim Provides brief biography, photograph, and filmography.
Cable Modem Resources on the Web MIT-RP on-line information on digital cable communication systems.
Farscape en danger Campagne de soutien contre l'arrêt de la série.
Lenny Zeltser - The World-Wide Web: Origins and Beyond Lenny Zeltser describes some of the historical aspects of World-Wide Web development,
as well as other forms of hypertext such as Xanadu.
Creationism Connection Synopses of creationist books categorized by discipline, internet sites and news
groups, creationist organizations and media distributors, creationist titles ...
Online Tonight® with David Lawrence Broadcast nationwide and on the Internet Monday-Saturday 7-10PM EST, discusses
timely issues concerning computers and the Internet.
Murder by Numbers (2002): Reviews Quotes from and links to reviews of the film with an overall score and viewer comments.
abklex.html Abklex: Lexikon der Abkuerzungen aus Informatik und Telekommunikation von Wulf
Alex, Universität Karlsruhe.
El Nino/Enso: Short- and Long- Term Effects Discusses short and long term environmental effects on army tactical decision of
this current off the Peruvian coast. With links to other information.
Elyse's CSI: New York [NY] Site Latest news, episode guide and images on CSI: New York, starring Gary Sinise.
CNN In-Depth Specials - Hackers - Related Sites [CNN]
Home - USY Athlétisme - Club d'athlétisme d'Yverdon-Les-Bains Le club d'athl étisme d'Yverdon-les-Bains présente ses athlètes et leurs résultats.
Galerie de photos, programme des entraînements et historique.
Le portail francophone - CAO FAO IAO PLM Prototypage rapide Portail francophonne sur les technologies de la CAO en association avec la version
française de CADreport.
Glossari de la Societat de la Informació En format AZ, amb definicions. Del Departament de la Societat dela Informació
del Govern d'Andorra.
Cite des Sciences et de l'Industrie - Paris Interactive experiments in science. Exhibits, talks, on-line learning content.
La Villette.
Achat en ligne - Guide d'achats, actualités, promotions, adresses ... Guide d'achats, actualités, promotions, adresses et tests.
rss_url = $url;
$this->num_to_show = $numtoshow;
$this->do_update = $update;
$this->my_html = preg_replace("/(#{.*?):(.*?})/", "\\1__\\2", $html); //xx:xx tag workaround
$this->content = $this->fetch_feed();
$this->parse_feed();
$this->show();
}
/* string */
function fetch_feed()
{
$url_parts = parse_url($this->rss_url);
$filename = $url_parts['host'] . str_replace("/", ",", $url_parts['path']) . "_" . @$url_parts['query'];
if(file_exists($this->data_directory . "/$filename")) {
$last = filemtime($this->data_directory . "/$filename");
if(time() - $last > $this->update_interval * 60 || $this->update_interval == 0) {
$update = 1;
}
} else {
$create= 1;
}
if($create == 1 || ($this->do_update == TRUE && $update == 1)) {
$fp = @fsockopen($url_parts['host'], 80, $errno, $errstr, 5);
if (!$fp) {
echo "Couldn't open rss feed {$this->feed_url} in {$_SERVER['PHP_SELF']}
\n";
return;
}
fputs($fp, "GET " . $url_parts['path'] . "?" . @$url_parts['query'] . " HTTP/1.0\r\n"
."Host: " . $url_parts['host'] . "\r\n"
."User-Agent: Drew's RSS Reader 0.1\r\n"
."Connection: Close\r\n\r\n");
while(!feof($fp)) {
$rss_data .= @fgets($fp, 1024);
}
list(, $rss_data) = explode("\r\n\r\n", $rss_data, 2);
$output = @fopen($this->data_directory . "/$filename", "w+");
if(!$output) {
return $rss_data;
} else {
flock($output, LOCK_EX);
fputs($output, $rss_data);
flock($output, LOCK_UN);
fclose($output);
}
} //update
return file_get_contents($this->data_directory . "/$filename");
}
/* void */
function parse_feed()
{
preg_match("/
(.*?)<\/title>/", $this->content, $title);
$this->feed_title = @$title[1];
preg_match("/ (.*?)<\/link>/", $this->content, $link);
$this->feed_link = @$link[1];
preg_match("/(.*?)<\/description>/", $this->content, $description);
$this->feed_description = @$description[1];
preg_match_all("/- ]*>(.*?)<\/item>/s", $this->content, $items);
if (sizeof($items[0]) == 0) {
echo "No item elements found in rss feed.
\n";
}
for($i = 0; $i < sizeof($items[0]); ++$i) {
preg_match_all("/(?:<([\w:]*)[^>]*>(?:)?<\/\\1>)+?/si", preg_replace("/- ]*>/", "", $items[0][$i]), $elements);
for($j = 0; $j < sizeof($elements[0]); ++$j) {
$elements[1][$j] = str_replace(":", "__", $elements[1][$j]); //regex fix for items with : like dc:date
$this->rss[$i][$elements[1][$j]] = trim(html_entity_decode($elements[2][$j]));
}
}
}
/* void */
function show()
{
if($this->my_html == "") {
$this->show_html();
} else {
$this->show_user_html();
}
}
function show_html()
{
$show = (sizeof($this->rss) > $this->num_to_show ? $this->num_to_show : sizeof($this->rss));
for($i = 0; $i < $show; ++$i) {
echo "-
rss[$i]['link']}\" target=\"_new\">{$this->rss[$i]['title']} \n";
}
}
function show_user_html()
{
$show = (sizeof($this->rss) > $this->num_to_show ? $this->num_to_show : sizeof($this->rss));
for($i = 0; $i < $show; ++$i) {
extract($this->rss[$i]);
$item = preg_replace("/#\{([^}]+)}/e", "$\\1", $this->my_html);
echo $item;
}
}
} // end class
$url = "http://www.justinpfister.com/gnewsfeed.php?q=Expert&lang=en&ned=us";
$show = 3;
$html = "#{title} #{description} ";
$update = 1;
$rss = new rss_parser($url, $show, $html, $update);
$url = "http://search.news.yahoo.com/usns/ynsearch/categories/47/index.html?p=Expert";
$show = 3;
$html = "#{title} #{description} ";
$update = 1;
$rss = new rss_parser($url, $show, $html, $update);
?>