|
|
NAPA Software |
|
|
|
Wallpaper Magic |
|
|
|
RealTimeDB |
|
|
|
Free Software and Tools |
|
|
|
Links |
|
|
|
|
|
News Server Lookup by ISP Domain
$btnSearch = "Find News Server";
$btnAdd = "Submit New Entry";
if ( $_POST['submitbutton'] == "" ) { ?>
Before you can start exploring the world of Usenet, or 'newsgroups', you need to locate a news server to connect to. In most cases your internet service provider will already provide access to a news server as part of your dialup or high speed internet access account.
For a list of news servers you may be able to use, enter the domain name of your internet service provider, or the domain portion of your email address. For example, if your email address is yourname@yourdomain.com, then enter 'yourdomain.com' as your domain.
}
else if ( $_POST['submitbutton'] == $btnSearch ) {
$emaildomain = trim( $_POST['emaildomain'] );
echo "Search Results for '" . $emaildomain . "'";
mysql_select_db("newsdb") or die( " | Database is currently offline. Please try again later. | " );
$result = mysql_query( "select * from newsdb.domsrv where domain='$emaildomain' and public <> 'Y' order by hits desc, server asc" );
$result_rows = mysql_num_rows( $result );
if ( $result_rows == 0 ) {
// Try checking for obvious names
$foundserver = 'no';
$testserver = "news." . $emaildomain;
$ip = gethostbyname( $testserver );
if ( $ip != $testserver ) {
$foundserver = $testserver;
}
else {
$testserver = "nntp." . $emaildomain;
$ip = gethostbyname( $testserver );
if ( $ip != $testserver ) {
$foundserver = $testserver;
}
}
if ( $foundserver == "no" ) {
if ( !preg_match( '/^(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)?/i', $emaildomain, $e ) ) {
echo "You entered an invalid email domain: '" . $emaildomain . "'
";
} else {
echo "Sorry, no news servers found for domain '" . $emaildomain . "'
";
}
} else {
echo "News Server | ";
echo "" . $foundserver . " | ";
echo "
";
mysql_select_db("newsdb");
mysql_query( "insert newsdb.domsrv values ( \"$emaildomain\", \"$foundserver\", \"\", 0, \"\", \"F\" )" );
}
} else {
echo $result_rows . " news servers found for domain '" . $emaildomain . "'";
?>
News Server |
for ( $rownum = 0; $rownum < $result_rows; ++$rownum ) {
if ( $row_data = mysql_fetch_array( $result ) ) {
echo "" . $row_data["server"] . " | ";
}
}
echo " ";
}
}
else if ( $_POST['submitbutton'] == $btnAdd ) {
$newdomain = trim( $_POST['newdomain'] );
$newserver = trim( $_POST['newserver'] );
$namestatus = 'ok';
// Validate hostname syntax
if ( !preg_match( '/^(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)?/i', $newdomain, $e ) ) {
$namestatus = "Email domain '$newdomain' is invalid.";
} else if ( !preg_match( '/^(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)?/i', $newserver, $n ) ) {
$namestatus = "News server domain '$newserver' is invalid.";
} else {
$emailhostname = $e[1];
$newshostname = $n[1];
// Skip checks on IP numbers
if ( !preg_match( '/^\d+\.\d+\.\d+\.\d+/', $emailhostname ) ) {
$ip = gethostbyname( $emailhostname );
if ( $ip == $emailhostname ) {
$namestatus = "Unable to validate email domain name '$emailhostname'";
} else {
if ( !preg_match( '/^\d+\.\d+\.\d+\.\d+/', $newshostname ) ) {
$ip = gethostbyname( $newshostname );
if ( $ip == $newshostname ) {
$namestatus = "Unable to validate news server name '$newshostname'";
}
}
}
}
}
if ( $namestatus == 'ok' ) {
mysql_select_db("newsdb") or die( "Database is currently offline. Please try again later. | " );
$result = mysql_query( "insert newsdb.domsrv values ( \"$newdomain\", \"$newserver\", \"\", 0, \"\", \"W\" )" );
if ( $result ) {
?>
Added News Server
echo "'$newserver added to database for email domain '$newdomain' ";
}
} else {
echo $namestatus . "
";
}
}
?>
Find your local news server
Enter your internet service provider's domain name to search for known news servers.
Add a news server
Help out a newbie by adding your local news server information to the database.
|
|