Ето, това е. Само смени site_id с уникалния ключ в таблицата, предполагам, че имаш такъв:
session_start();
if(empty($_SESSION['displayed_sites'])){
$_SESSION['displayed_sites'] = array();
}
if($_SESSION['displayed_sites']){
$sql = mysql_query("SELECT * FROM sites WHERE types='1' AND site_id NOT IN(".join(",",$_SESSION['displayed_sites']).") ORDER BY rand() LIMIT 1");
} else {
$sql = mysql_query("SELECT * FROM sites WHERE types='1' ORDER BY rand() LIMIT 1");
}
$link = '';
if(mysql_num_rows($sql)){
while ($down = mysql_fetch_object($sql)){
$_SESSION['displayed_sites'][] = $down->site_id;
$link = '<a href="'.$down->site_url.'" target="_blank"><img src="'.$down->site_baner.'" border="0"></a>';
}
} elseif($_SESSION['displayed_sites']){ // това ще се изпълни когато извърти всички сайтове в базата
$_SESSION['displayed_sites'] = array();
$sql = mysql_query("SELECT * FROM sites WHERE types='1' ORDER BY rand() LIMIT 1");
while ($down = mysql_fetch_object($sql)){
$_SESSION['displayed_sites'][] = $down->site_id;
$link = '<a href="'.$down->site_url.'" target="_blank"><img src="'.$down->site_baner.'" border="0"></a>';
}
}
echo $link;
може да се напише и малко по-елегантно, но като идея работи
