excellent Patric, and Luka of course! 
might I suggest that this be adapted so that those rss links open a new window rather than replace..
..doesn't hurt to keep your site visitors around a wee bit longer eh? 
Well it just might be a way... But I'm in over my head

... I'm just the ideea popper, you know, the coding has to be done by someone else...
But if we could implement this line to the code:
<script type="text/javascript">external_link("http://www.url.com","linkname",1);</script>
Perhaps somewhere around here:
echo "<p><a title='Read Full Article' href=\"" . $rss_channel["ITEMS"][$i]["LINK"] . "\">" . $rss_channel["ITEMS"][$i]["TITLE"] . "</a>
";
And then use this piece of javascript that I stole from Brauck (where
did you get this, I want this in english

):
var _root='http://www.ulr.com/'; //don't forget the trailing slash
var _imgpath = _root + 'images/'; //link to an image representing the popup named "new_window.gif"
//*********************************** used in contactgeg.php and printme.php **************************
function afdrukken() {
document.write("<a href=\"javascript:window.print()\">Afdrukken</a>");
}
function sluiten() {
document.write("<a href=\"javascript:window.close()\">Sluit dit venter</a>");
}
function printContactgegevens() {
popup = '<a href="javascript: NewWindow(\'contactgeg.php\',\'Contactgegevens\',400,240,\'no\')"'
+ 'onMouseOut="MM_swapImgRestore()"'
+ 'onMouseOver="MM_swapImage(\'afdrukken\',\'\',\''
+ _imgpath
+ 'bt_print_over.gif\',1)">'
+ '<img src="'
+ _imgpath
+ 'bt_print.gif" width="78" height="16" border="0" alt="Printen" name="afdrukken"></a>';
document.write(popup);
}
/***********************************************************************************************/
function backButton() {
document.write("<a href='javascript: history.back()' onMouseOut=\"MM_swapImgRestore()\" onMouseOver=\"MM_swapImage(\'back\',\'\',\'" + _imgpath + "bt_back_over.gif\',1)\"><img src=\" " + _imgpath + "bt_back.gif\" alt=\"\" name=\"back\" width=\"54\" height=\"16\" border=\"0\"></a>");
}
function printButton() {
document.write("<a href='javascript: window.print()' onMouseOut=\"MM_swapImgRestore()\" onMouseOver=\"MM_swapImage(\'print\',\'\',\'" + _imgpath + "bt_print_over.gif\',1)\"><img src=\" " + _imgpath + "bt_print.gif\" alt=\"\" name=\"print\" width=\"78\" height=\"16\" border=\"0\"></a>");
}
function goBack() {
document.write("<a href='javascript: history.back()'>Terug</a>");
}
function external_link(url,linktxt,pic) {
var linksetting = '<a href=\"'+url+'\"';
linksetting +=' class=\"external\"';
linksetting +=' onclick=\"n_window(this.href);return false\" target=\"_blank\">';
linksetting +=linktxt;
linksetting +='</a>';
if(pic==0) {
document.write(linksetting); }
else {
linksetting +='<img src=\"' + _imgpath + 'new_window.gif\" alt=\"New window\">';
document.write(linksetting);
}
}
//*********************************** block multiple form submissions *****************************
// recommend.php
var formerrormsg="U heeft geprobeerd dit formulier meerdere keren achter elkaar te verzenden.\n Herlaad de pagina indien u een tweede formulier wilt verzenden."
function checksubmit(submitbtn){
submitbtn.form.submit()
checksubmit=blocksubmit
return false
}
function blocksubmit(){
if (typeof formerrormsg!="undefined")
alert(formerrormsg)
return false
}
//*********************************** Pop-up Center ***********************************************
//Deze functie wordt gebruikt in contact.html
function NewWindow(page,name,w,h,scroll){
var win= null;
var winl = (screen.width-w)/2;
var wint = (screen.height-h)/2;
var settings ='height='+h+',';
settings +='width='+w+',';
settings +='top='+wint+',';
settings +='left='+winl+',';
settings +='scrollbars='+scroll+',';
settings +='resizable=no'+',';
settings +='status=no';
win=window.open(page,name,settings);
if(parseInt(navigator.appVersion) >= 4){win.window.focus();}
}
//************************************* full window ***********************************************
//Deze functie wordt gebruikt
function fullWindow(url) {
var str = "left=0,screenX=0,top=0,screenY=0";
if (window.screen) {
var ah = screen.availHeight - 30;
var aw = screen.availWidth - 10;
str += ",height=" + ah;
str += ",innerHeight=" + ah;
str += ",width=" + aw;
str += ",innerWidth=" + aw;
str += ",directories=no";
str += ",location=no";
str += ",menubar=yes";
str += ",resizable=yes";
str += ",scrollbars=yes";
str += ",status=no";
str += ",toolbar=yes";
}
win=window.open(url, "w", str);
}
//*********************************** links in new window ****************************************
//Deze functie wordt gebruikt in banners.php - footer.php
//
function n_window(theurl)
{
// set width and height
var the_width=760;
var the_height=550;
// set window position
var from_top=20;
var from_left=20;
// set other attributes
var has_toolbar='yes';
var has_location='yes';
var has_directories='yes';
var has_status='yes';
var has_menubar='yes';
var has_scrollbars='yes';
var is_resizable='yes';
// atrributes put together
var the_atts='width='+the_width+',height='+the_height+',top='+from_top+',screenY='+from_top+',left='+from_left+',screenX='+from_left;
the_atts+=',toolbar='+has_toolbar+',location='+has_location+',directories='+has_directories+',status='+has_status;
the_atts+=',menubar='+has_menubar+',scrollbars='+has_scrollbars+',resizable='+is_resizable;
// open the window
window.open(theurl,'',the_atts);
}
//************************************* roll-overs *******************************************
// Wordt gebruikt in index2.php
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
/***********************************************************************************************/
function bigFont() {
document.write("<a href=\"#\" onClick=\"changeStyle(\'bigfont\');\" onMouseOver=\"return overlib(\' Groot lettertype \', WIDTH, 100);\" onMouseOut=\"return nd();\"><img src=\"http://pc02/gpj/img/a_plus.gif\" alt=\"\" width=\"25\" height=\"25\" border=\"0\" /></a>");
}
function normalFont() {
document.write("<a href=\"#\" onClick=\"changeStyle(\'default\');\" onMouseOver=\"return overlib(\' Normaal lettertype \', WIDTH, 110);\" onMouseOut=\"return nd();\"><img src=\"http://pc02/gpj/img/a_min.gif\" alt=\"\" width=\"25\" height=\"25\" border=\"0\" /></a>");
}
/***********************************************************************************************
Script to swap between stylesheets
Written by Mark Wilton-Jones, 05/12/2002. v2.2 updated 29/04/2004 for Konqeror XHTML fix
************************************************************************************************
Please see http://www.howtocreate.co.uk/jslibs/ for details and a demo of this script
Please see http://www.howtocreate.co.uk/jslibs/termsOfUse.html for terms of use
*/
function getAllSheets() {
if( !window.ScriptEngine && navigator.__ice_version ) { return document.styleSheets; }
if( document.getElementsByTagName ) { var Lt = document.getElementsByTagName('link'), St = document.getElementsByTagName('style');
} else if( document.styleSheets && document.all ) { var Lt = document.all.tags('LINK'), St = document.all.tags('STYLE');
} else { return []; } for( var x = 0, os = []; Lt[x]; x++ ) {
var rel = Lt[x].rel ? Lt[x].rel : Lt[x].getAttribute ? Lt[x].getAttribute('rel') : '';
if( typeof( rel ) == 'string' && rel.toLowerCase().indexOf('style') + 1 ) { os[os.length] = Lt[x]; }
} for( var x = 0; St[x]; x++ ) { os[os.length] = St[x]; } return os;
}
function changeStyle() {
window.userHasChosen = window.MWJss;
for( var x = 0, ss = getAllSheets(); ss[x]; x++ ) {
if( ss[x].title ) { ss[x].disabled = true; }
for( var y = 0; y < arguments.length; y++ ) { if( ss[x].title == arguments[y] ) { ss[x].disabled = false; } }
} }
function rememberStyle( cookieName, cookieLife ) {
for( var viewUsed = false, ss = getAllSheets(), x = 0; window.MWJss && ss[x]; x++ ) { if( ss[x].disabled != MWJss[x] ) { viewUsed = true; break; } }
if( !window.userHasChosen && !viewUsed ) { return; }
for( var x = 0, outLine = '', doneYet = []; ss[x]; x++ ) {
if( ss[x].title && ss[x].disabled == false && !doneYet[ss[x].title] ) { doneYet[ss[x].title] = true; outLine += ( outLine ? ' MWJ ' : '' ) + escape( ss[x].title ); } }
if( ss.length ) { document.cookie = escape( cookieName ) + '=' + escape( outLine ) + ( cookieLife ? ';expires=' + new Date( ( new Date() ).getTime() + ( cookieLife * 86400000 ) ).toGMTString() : '' ) + ';path=/'; }
}
function useStyleAgain( cookieName ) {
for( var x = 0; x < document.cookie.split( "; " ).length; x++ ) {
var oneCookie = document.cookie.split( "; " )[x].split( "=" );
if( oneCookie[0] == escape( cookieName ) ) {
var styleStrings = unescape( oneCookie[1] ).split( " MWJ " );
for( var y = 0, funcStr = ''; styleStrings[y]; y++ ) { funcStr += ( y ? ',' : '' ) + 'unescape( styleStrings[' + y + '] )'; }
eval( 'changeStyle(' + funcStr + ');' ); break;
} } window.MWJss = []; for( var ss = getAllSheets(), x = 0; ss[x]; x++ ) { MWJss[x] = ss[x].disabled; }
}
/***********************************************************************************************/
function popUp(url, br, ho){
var w = br;
var h = ho;
var scroll = 1;
var win= null;
var winl = (screen.width-w)/2;
var wint = (screen.height-h)/2;
var settings ='height='+h+',';
settings +='width='+w+',';
settings +='top='+wint+',';
settings +='left='+winl+',';
settings +='scrollbars='+scroll+',';
settings +='resizable=no'+',';
settings +='status=no';
win=window.open(url,name,settings);
if(parseInt(navigator.appVersion) >= 4){win.window.focus();}
}
The first piece of code way up in this post uses this javascript to open a new window pretty neat... I don't know if it's possible. It works though, go check
http://www.brauck.nl and that little "doubl window" icon beside a link...
Patric.