Problème avec une boucle.

aneantisseur Messages postés 411 Statut Membre -  
aneantisseur Messages postés 411 Statut Membre -
Bonjour, je suis en train de faire une fonction pour bloquer ou debloquer des discussions sur mon forum, le problème est au niveau des message, ils ne s'affichent plus, ou il en manque quelques uns. Je ne trouve pas ce l'erreur dans mon code. Je pense que ca vient de la boucle. Le voici :

		if ($test2['titre'] == urldecode($_GET['sujet']))
		{
			if ($_STATUT == 3 OR $_STATUT == 1)
			{
				echo ' <center><font size="15"><blink>Vous êtes dans le forum '.$_GET['titre'].' !</blink></font><br /><br />
				<font size="10">'.$_GET['sujet'].'</font><br /><br />
				';
				$test = mysql_fetch_array($reponse);
				if ($test['lock'] == 1)
				{
					echo'
					Participer à la discussion : <br />
					<form action="discussions.php?titre='.$_GET['titre'].'&amp;sujet='.$_GET['sujet'].'" method="post" >
					<p><textarea name="contenu_sujet" id="contenu_sujet" rows="10" cols="45"></textarea><br /></p>
					<input type="submit" name="discuter_sujet" id="discuter_sujet" value="Discuter !" />
					</form></center><br />
					';
				
					$titre = urldecode(addslashes($_GET['sujet']));
					if (isset($_POST['discuter_sujet']))
					{
						$unlock = 1;
						$lock = 0;
						$pseudo = addslashes($_SESSION['pseudo']);
						$signature = addslashes($_SESSION['signature']);
						$image = addslashes($_SESSION['image']);
						$message = addslashes(htmlentities(mysql_real_escape_string($_POST['contenu_sujet'])));
						
						if ($message == true)
						{
							
							$query_sujet = mysql_query("INSERT INTO forum_".$_GET['titre']." VALUES('', '" . $titre . "', '" . $pseudo . "', '" . $signature . "', '" . $image . "', '" . $message . "', '" . time(). "', '".$unlock."')") or die (mysql_error());
							if ($query_sujet == true)
							{
								echo '<center>Votre participation a été enregistrée !<br />
									<a href="discussions.php?titre='.$_GET['titre'].'&amp;sujet='.urldecode($_GET['sujet']).'">Cliquez ici</a></center>
								';
							}
						}
					}
					if ($_STATUT == 3)
					{
								while ($donnees == mysql_fetch_array($reponse))
								{
									if (isset($_GET['id']))
									{
										$query_delete = mysql_query('DELETE FROM forum_'.$_GET['titre'].' WHERE ID=\''.$_GET['id'].'\'');
										if ($query_delete)
										{
											echo '<center>Le message a bien été supprimé !</center>
											';
										}	
									}

										$donnees['message'] = nl2br(stripslashes($donnees['message']));
											$timestamp = mktime() - $donnees['timestamp'];
											echo '<table border="1">
												<tr><td width="300px">'.$donnees['pseudo'].'<br /><br />
														'.$donnees['image'].'<br /><br /><br />
														posté il y a ';	if ($timestamp <= 86400) {echo date('H\hi',$timestamp);}
																		else if ($timestamp <= 592200) {echo date('d\j\o\u\r\s H\hi',$timestamp);}
																		else if ($timestamp <= 2592000) {echo date('d\j\o\u\r\s m\m\o\i\s H\hi',$timestamp);}
																		else {echo date('H\hi',$timestamp);}echo '
												</td><td width="600px"><div class=discussions_forum><p>'.$donnees['message'].'</p></div>
												</td></tr>
												<tr><td width="300px" border="0"><center><a href="discussions.php?titre='.$_GET['titre'].'&amp;sujet='.urldecode($_GET['sujet']).'&amp;id='.$donnees['ID'].'">Supprimer</a></center></td>
												<td valign=center align=center width="600px"><i>'.nl2br(stripslashes($donnees['signature'])).'</i>
												</td></tr>
												</table><br />
												';
									
								}
					}
					else
					{
								while ($donnees = mysql_fetch_array($reponse))
								{
									$donnees['message'] = nl2br(stripslashes($donnees['message']));
									$timestamp = mktime() - $donnees['timestamp'];
									echo '<table border="1">
										<tr><td width="300px">'.$donnees['pseudo'].'<br /><br />
												'.$donnees['image'].'<br /><br /><br />
												posté il y a ';	if ($timestamp <= 86400) {echo date('H\hi',$timestamp);}
																else if ($timestamp <= 592200) {echo date('d\j\o\u\r\s H\hi',$timestamp);}
																else if ($timestamp <= 2592000) {echo date('d\j\o\u\r\s m\m\o\i\s H\hi',$timestamp);}
																else {echo date('H\hi',$timestamp);}echo '
										</td><td width="600px"><div class=discussions_forum><p>'.$donnees['message'].'</p></div>
										</td></tr>
										<tr><td width="300px" border="0"></td><td valign=center align=center width="600px"><i>'.nl2br(stripslashes($donnees['signature'])).'</i>
										</td></tr>
										</table><br />
										';
								}
					}
				}
				else
				{
						echo 'La discussion a été bloquée.<br /><br /></center>
						';
					
					if ($_STATUT == 3)
					{
								while ($donnees == mysql_fetch_array($reponse))
								{
									if (isset($_GET['id']))
									{
										$query_delete = mysql_query('DELETE FROM forum_'.$_GET['titre'].' WHERE ID=\''.$_GET['id'].'\'');
										if ($query_delete)
										{
											echo '<center>Le message a bien été supprimé !</center>
											';
										}	
									}

										$donnees['message'] = nl2br(stripslashes($donnees['message']));
											$timestamp = mktime() - $donnees['timestamp'];
											echo '<table border="1">
												<tr><td width="300px">'.$donnees['pseudo'].'<br /><br />
														'.$donnees['image'].'<br /><br /><br />
														posté il y a ';	if ($timestamp <= 86400) {echo date('H\hi',$timestamp);}
																		else if ($timestamp <= 592200) {echo date('d\j\o\u\r\s H\hi',$timestamp);}
																		else if ($timestamp <= 2592000) {echo date('d\j\o\u\r\s m\m\o\i\s H\hi',$timestamp);}
																		else {echo date('H\hi',$timestamp);}echo '
												</td><td width="600px"><div class=discussions_forum><p>'.$donnees['message'].'</p></div>
												</td></tr>
												<tr><td width="300px" border="0"><center><a href="discussions.php?titre='.$_GET['titre'].'&amp;sujet='.urldecode($_GET['sujet']).'&amp;id='.$donnees['ID'].'">Supprimer</a></center></td>
												<td valign=center align=center width="600px"><i>'.nl2br(stripslashes($donnees['signature'])).'</i>
												</td></tr>
												</table><br />
												';
									
								}
					}
					else
					{
								while ($donnees = mysql_fetch_array($reponse))
								{
									$donnees['message'] = nl2br(stripslashes($donnees['message']));
									$timestamp = mktime() - $donnees['timestamp'];
									echo '<table border="1">
										<tr><td width="300px">'.$donnees['pseudo'].'<br /><br />
												'.$donnees['image'].'<br /><br /><br />
												posté il y a ';	if ($timestamp <= 86400) {echo date('H\hi',$timestamp);}
																else if ($timestamp <= 592200) {echo date('d\j\o\u\r\s H\hi',$timestamp);}
																else if ($timestamp <= 2592000) {echo date('d\j\o\u\r\s m\m\o\i\s H\hi',$timestamp);}
																else {echo date('H\hi',$timestamp);}echo '
										</td><td width="600px"><div class=discussions_forum><p>'.$donnees['message'].'</p></div>
										</td></tr>
										<tr><td width="300px" border="0"></td><td valign=center align=center width="600px"><i>'.nl2br(stripslashes($donnees['signature'])).'</i>
										</td></tr>
										</table><br />
										';
								}
					}
				}
			}
			else
			{
				echo ' <center><font size="15"><blink>Vous êtes dans le forum '.$_GET['titre'].' !</blink></font><br /><br />
				<font size="10">'.$_GET['sujet'].'</font><br /><br />
				';
				$titre = urldecode(addslashes($_GET['sujet']));
							while ($donnees = mysql_fetch_array($reponse))
							{

									$donnees['message'] = nl2br(stripslashes($donnees['message']));
									$timestamp = mktime() - $donnees['timestamp'];
									echo '<table border="1">
										<tr><td width="300px">'.$donnees['pseudo'].'<br /><br />
												'.$donnees['image'].'<br /><br /><br />
												posté il y a ';	if ($timestamp <= 86400) {echo date('H\hi',$timestamp);}
																else if ($timestamp <= 592200) {echo date('d\j\o\u\r\s H\hi',$timestamp);}
																else if ($timestamp <= 2592000) {echo date('d\j\o\u\r\s m\m\o\i\s H\hi',$timestamp);}
																else {echo date('H\hi',$timestamp);}echo '
										</td><td width="600px"><div class=discussions_forum><p>'.$donnees['message'].'</p></div>
										</td></tr>
										<tr><td width="300px" border="0"></td><td valign=center align=center width="600px" ><i>'.nl2br(stripslashes($donnees['signature'])).'</i>
										</td></tr>
										</table><br />
										';

							}
			}
		

			
		}


Voilà, merci de bien vouloir m'aider.

1 réponse

aneantisseur Messages postés 411 Statut Membre 18
 
Personne pour m'aider ?
0