Je me disais dès fois que le problème était déjà vu  
 
Le code :
<div id="menu">
	
		<div class="element_menu">
			<h3><a href="index.php">Retour à l'accueil</a></h3>
		</div>
		
		<div class="element_menu">
			<h3>Infos personelles</h3>
			<ul>
				<? 
Petit code php pour l'affichage du login si connecté. Invité sinon.
				?>
			</ul>
		</div>
		
		<div class="element_menu">
			<h3>Où aller ?</h3>
			<ul>
				<li><a href="forum.php">Le forum</a></li>
			</ul>
		</div>
		
		<div class="element_menu">
			<h3>Utiles</h3>
			<ul>
				<li><a href="user.php?action=online"><? echo $connectes; ?></a></li>
				<li><a href="forum.php?id_forum=0&action=nouveaux"><? echo $new_posts; ?></a></li>
			</ul>
		</div>
		
	</div>
<?
// Du code php pour récupérer $action
?>
<div id="main">
	<div class="element_main">
		<? echo $actions; ?>
	</div>
	
	
	<div class="element_main">
		<p>
			<table class='forum'>
				<tr><td colspan=3 class='separateur'>Forums parents</td></tr>
				<? forums_parents($id_forum); ?>
				<? 
					if($action == "nouveau") 
					{
						echo "<tr><td colspan=3>";
						formulaire("Titre du post :","Votre post :","post_new",$id_forum,0,"",""); 
						echo "</td></tr>"; 
					}
					if($action == "new_forum")
					{
						echo "<tr><td colspan=3 class='separateur'>Nouveau forum</td></tr>";
						echo "<tr><td colspan=3>";
						formulaire("Titre du forum :","Description :","forum_new",$id_forum,0,"",""); 
						echo "</td></tr>"; 
					}	
					if($action == "edit_forum" && isset($_GET['to_edit']) && $_GET['to_edit']!="")
					{
						$sql_forums = 'SELECT titre,sstitre FROM il_forums WHERE id_forum='.$_GET['to_edit'].' '; 
						$req_forums = mysql_query($sql_forums) or die('Erreur SQL !<br>'.$sql_forums.'<br>'.mysql_error()); 	
						$to_edit = mysql_fetch_array($req_forums);
						
						echo "<tr><td colspan=3 class='separateur'>Nouveau forum</td></tr>";
						echo "<tr><td colspan=3>";
						formulaire("Titre du forum :","Description :","forum_edit",$id_forum,$_GET['to_edit'],stripslashes($to_edit['titre']),stripslashes($to_edit['sstitre']) ); 
						echo "</td></tr>"; 
					}	
					if($action == "nouveaux")
						forum_new_posts();
					else
					{
						echo "<tr><td colspan=3 class='separateur'>Les forums</td></tr>";
						forum($req_forums); 
						forum_post($req_posts, $id_forum); 
					}
				?>
			</table>
		</p>
	</div>
J'ai avec tout ça un petit css qui contient en gros :
	#menu
	{
		margin-bottom: 1%;
	
		float: left;
		width: 200px; 
		
		border: 1px solid black;
		background-color: #B4B4F0; 
	}
	
		#menu .element_menu
		{
			margin: 7px;
			
			border: 1px solid black;
			background-color: #DFDFFF; 
		}
	
	
	#main
	{
		margin-left: 210px;
		margin-bottom: 1%;
		
		border: 1px solid black;
		background-color: #B4B4F0; 
	}
	
		#main .element_main
		{
			margin: 1%; 
			padding: 1%;
					
			border: 1px solid black;
		
			background-color: #DFDFFF; 
		}
	
	
		/* LE FORUM */
		
		.forum
		{
			width: 100%;
		}
		.forum td
		{
			padding: 1%; 
			padding-left: 10px; 
			padding-right: 10px; 
			border: 1px solid black;
		}
		.forum #col1
		{
			width: 15%;
			padding-top: 7px;
			vertical-align: top;
		}
		.forum #col2
		{
			width: 60%;
		}
		.forum .separateur
		{
			background-color: #B0B0E7;
			text-align: center;
		}
		.forum .separateur2
		{
			background-color: #E0E0FF;
			text-align: center;
		}
		.forum .titre
		{
			background-color: #D0D0FF;
			text-align: left;
		}
Bon, je sais, mon code n'est pas sensationel (et surement pas très homologué), mais je suis en plein chantier de validation.
Et j'aimerais avant tout résoudre ça.
Note 1 : l'adresse :  
www.lahyenne.org/il
Note 2 : Est-ce que cela peut venir du fait que j'ai du code php au milieu de ma page ? Ou des fonctions récursives qui calculent si j'ai des nouveau messages dans mes sous forums (et sous-sous forums, etc.)  ?