Zend - The PHP Company




Discussion

Add Code


newsgroup reader  

Type: application
Added by: swaxi
Entered: 03/11/2002
Last modified: 01/11/2001
Rating: - (fewer than 3 votes)
Views: 5527
a short example of how to use pear's nntp class to read from newsgroups (usenet), since the documentation on pear's site suxx.


<?php
require_once("net/NNTP.php");
define ("USENET_URL""news.php.net");

$nntp = new Net_NNTP;
$ret $nntp->connect(USENET_URL);
if( 
PEAR::isError($ret)) {
    
// handle error
    
echo "error : ".$ret->getMessage()."<br>";
} else {
    
// success
    
if (isset($messageid)) {
        
$headers $nntp->splitHeaders($messageid);
        echo 
"<b>".$headers["Subject"]."</b> ";
        echo 
"<a href="?group=".$group."">up</a><br>";
        
$body $nntp->getBody($messageid);
        echo 
nl2br($body);
    } else if (isset(
$group)) {
        echo 
"<b>".$group."</b> ";
        echo 
"<a href="?">up</a><br>";
        
// print all messages
        
$data $nntp->selectGroup($group);
        
$msgs $nntp->getOverview($data["first"], $data["last"]);
        foreach(
$msgs as $msg) {    // print subjects
            
echo "&nbsp;&nbsp;&nbsp;&nbsp;"."<a href="?messageid=".$msg["Message-ID"]."&group=".$group."">";
            echo 
$msg["Subject"]."</a><br>";
        }
    } else {
        
// Print a list of avaible newsgroups
        
$groups $nntp->getGroups();
        foreach(
$groups as $group) {
            echo 
"<b><a href="?group=".$group["group"]."">";
            echo 
$group["group"]." : ".$group["desc"];
            echo 
"</a></b><br>";
        }
    }
    
$nntp->quit();
}
?>


Usage Example




Rate This Script





Search



This Category All Categories