Valeur d'un input non pris en compte

Psix Messages postés 105 Date d'inscription   Statut Membre Dernière intervention   -  
Psix Messages postés 105 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, je crée un site et j'ai souhaité mettre un système de commentaires, et pour le formulaire j'ai pris FCKEditor. Tout marche très bien, sauf dans un script d'une page, à partir de la 2ème photo la valeur du texte rentré dans l'éditeur n'est pas prise en compte. (Pour la 1ère image tout marche) J'ai utilisé un système d'accordéon pour cacher|afficher les commentaires.

Voici ma page :

<?php

if(isset($_GET['type']))
{
	$type = $_GET['type'];


if(isset($_GET['animal']))
		{
		
			$animal_get_comm = $_GET['animal'];
//_____________________________________________________________________req post comm________________________________________________________________________________

$message_alert_comm_post = "";


	if(isset($_POST['pseudo']) AND isset($_POST['timestamp']))
	{
			$id_view = $_POST['view_id'];


		include("co.php");
		$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
	   
	
	
	
	
	
		   $postArray = $_POST['FCKeditor1'];			// 4.1.0 or later, use $_POST
		
			if (get_magic_quotes_gpc())
			{	
				$messageHTML = $postArray;	
		
				$postedValue = htmlspecialchars(stripslashes($postArray));
			}
			else
			{
				$messageHTML = $postArray;	
				$postedValue = htmlspecialchars( $postArray ) ;
			}
			
				
	
	
	
	$code1 = array('\'Comic Sans MS\'', '\'Courier New\'', '\'Times New Roman\'');
	
	$code2 = array('Comic Sans MS', 'Courier New', 'Times New Roman');
					
	$messageHTML = str_replace($code1, $code2, $messageHTML);
	
	$postedValue = str_replace($code1, $code2, $postedValue);
	
	
	
	
		$timestamp = $_POST['timestamp'];
		
		
		$animal_comm = $animal_get_comm;
		
		$type_comm = $type;
		
		//echo $pseudo; 
		
	//	echo $_POST['FCKeditor1'];
		
		if($pseudo != "" AND $messageHTML != "")
		{
			
			//mysql_query("INSERT INTO commentaires VALUES('', '$postedValue', '$messageHTML', '$pseudo', '$timestamp', '$id_view', '$animal_comm', '$type_comm')");
			
			echo "<div style=\"background-color:#FFFFFF\">ON<br>1) $pseudo<br>2) $postedValue<br>3) $messageHTML<br>4) $id_view<br>5) $animal_comm<br>6) $type_comm<br>7) $timestamp";
			//echo nl2br(htmlentities($message));
		}
		else
		{
		
				if($pseudo == "")
				{
				$message_alert_comm_post .= "<br>Pseudo vide<br>";
				}
				
				if($messageHTML == "")
				{
				$message_alert_comm_post .= "<br>Message vide<br>";
				}

			$message_alert_comm_post .= "<br><div align=\"center\">Veuillez remplir tous les champs !</div><br>";
			
			echo "<div style=\"background-color:#FFFFFF\">OFF<br>1) $pseudo<br>2) $postedValue<br>3) $messageHTML<br>4) $id_view<br>5) $animal_comm<br>6) $type_comm<br>7) $timestamp";
			//echo nl2br(htmlentities($message));

		}
	
	}
// __________________________________________________________________fin req post comm______________________________________________________________________________________________________

}	
	
		if(isset($_GET['animal']))
		{
		
			$animal_get = $_GET['animal'];
			
			if($type == "photo")
			{
				$type_base = "photos";
				$type_req = "img";
			}
			
			elseif($type == "video")
			{
				$type_base = "video";
				$type_req = "vid";
			}
				
				include("debut.php");
				
				$annee = $_GET['annee'];
				$titre = $_GET['titre'];
				
				?>

		<link href="../sample.css" rel="stylesheet" type="text/css" /> 
		<script type="text/javascript"> 
 
function FCKeditor_OnComplete( editorInstance )
{
	var oCombo = document.getElementById( 'cmbSkins' ) ;
 
	// Get the active skin.
	var sSkin = editorInstance.Config['SkinPath'] ;
	sSkin = sSkin.match( /[^\/]+(?=\/$)/g );
	oCombo.value = sSkin;
	oCombo.style.visibility = "";
}
 
function ChangeSkin( skinName )
{
	window.location.href = window.location.pathname + "?Skin=" + skinName ;
}
 
		</script> 
	
	


				<table width="100%" height="28" border="0">
				<tr>
				<td height="24" align="right"> 
		  
				<?php
include("co.php");
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 2; // Essayez de changer ce nombre pour voir :o)

// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM '.$animal_get.'_'.$type_base.' WHERE '.$type_req.'_annee = ' . $annee . '');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];

// On calcule le nombre de pages à créer
$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);

// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo '';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a href="view.php?type='.$type.'&amp;animal='.$animal_get.'&amp;annee=' . $annee . '&amp;titre=' . $titre . '&amp;page=' . $i . '">' . $i . '</a> ';
}
?>		  </td>
        </tr>
      </table>
      <p align="center" class="Style2" id="titre">
	  
	  
<div id="titre">
</div>
<?php


echo '<script type="text/javascript">      
     var fo = new SWFObject("titre.swf", "mymovie", "400", "50", "8", "#FFFFFF"); 
      fo.addParam("menu", "false");
	  fo.addParam("wmode", "opaque");
      fo.addVariable("titre", "' . $titre . '");
      fo.write("titre");
</script>';

?>
</div>
	    
	  
	    
	  
	    
	  
      </p>
</p>

      <p>
	  <div id="bulle"></div>
	  
	  <div id="container">
	        
	<div id="vertical_container">
	
	
	  		  	  <?php
include("co.php");



if (isset($_GET['page']))
{
        $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor_note.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
        $page = 1; // On se met sur la page 1 (par défaut)
}
// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
 
$reponse = mysql_query('SELECT * FROM '.$animal_get.'_'.$type_base.' WHERE '.$type_req.'_annee=' . $annee .' ORDER BY '.$type_req.'_date LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);






while ($donnees = mysql_fetch_array($reponse))
{


echo '


      <table width="700" border="0" align="center">
        <tr>';
		
		if($type == "photo")
		{

$desc = $donnees['img_desc'];


		
$desc = str_replace(CHR(10),"",$desc); 
$desc = str_replace(CHR(13),"",$desc); 

$desc = str_replace("<p>",'<p style=line-height:0.5pt;>',$desc); 

if(preg_match("#</p>$#", $desc))
{
}
else
{
$desc .= "<br><br>";
}


		  echo '
		  
          <td width="350" >
		  
		  
		  

		  
<a href="#"
onmouseover="showTooltip(\'<div class=info>'.$desc.'<img id=big src=upload/'.$animal_get.'/' . $donnees[''.$type_req.'_photo'] . ' height=450></div>\');"
onmouseout="hideTooltip()"><img src="upload/'.$animal_get.'/' . $donnees[''.$type_req.'_photo'] . '" width="300" id="big" onmouseout="hideTooltip();" />
</a>
		  </td>';
		  }
			elseif($type == "video")
			{
				  echo'
						<td width="350" >
				  
								<p id="' . $donnees['vid_id'] . '">
				<a href="https://get.adobe.com/flashplayer/">Get the Flash Player</a> to see this player.</p>
				<script type="text/javascript">
					var s1 = new SWFObject("lecteurflv.swf","single","320","267","8","#000000");
					s1.addParam("allowScriptAccess","sameDomain");
					s1.addParam("allowfullscreen","true");
					s1.addVariable("file","upload/'.$type.'_'.$animal_get.'/' . $donnees['vid_video'] . '");
					s1.addVariable("image","upload/'.$type.'_'.$animal_get.'/' . $donnees['vid_photo'] . '");
					s1.addVariable("backcolor","0x4277AB");
					s1.addVariable("width","320");
					s1.addVariable("height","267");
					s1.write("' . $donnees['vid_id'] . '");
				</script>


				  </td>';
			}
		  
		  echo '
          <td width="388" valign="top"><p>&nbsp;</p>
		  
		  
		  
		  
		  
            <p align="justify"> ' . $donnees[''.$type_req.'_desc'] . '</p>
          </td>
        </tr>';
		
	

// ___________________________________________________________________Commentaires_______________________________________________________________________________________________________________


include("commentaires.php");


// ___________________________________________________________________________________________________________________________________________________________


		echo '<tr>
          <td>&nbsp;</td>
          <td valign="top">&nbsp;</td>
        </tr>
      </table>';


}



mysql_close();

?>

	  
</div>
</div>

<table width="100%" height="28" border="0">
        <tr>
          <td height="24" align="right"> <?php
include("co.php");
// On met dans une variable le nombre de messages qu'on veut par page

// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM '.$animal_get.'_'.$type_base.' WHERE '.$type_req.'_annee = ' . $annee . '');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];

// On calcule le nombre de pages à créer
$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);

// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo '';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a href="view.php?type='.$type.'&amp;animal='.$animal_get.'&amp;annee=' . $annee . '&amp;titre=' . $titre . '&amp;page=' . $i . '">' . $i . '</a> ';
}
?>		  </td>
        </tr>
      </table>    </td>
  </tr>
</table>




</body>
</html>
				<?php
			
	} 
			
}
?>



Et voici ma page commentaires :

<?php

// debut du tr des comm______________________________________________________________________________________________________________________________________
		echo '<tr>
          <td colspan="2"><div class="comm">';
		  
	include("co.php");
	  
		  
	$req_comm_1 = mysql_query('SELECT COUNT(*) AS nb_id FROM commentaires WHERE id_view="'.$donnees[''.$type_req.'_id'].'" AND type="'.$type.'" AND animal="'.$animal_get.'"');
	$donnees_comm_1 = mysql_fetch_array($req_comm_1);
	$nb_de_comm = $donnees_comm_1['nb_id'];
	


		
		
		
		
			if($nb_de_comm == 1 OR $nb_de_comm == 0)
			{
			
				$nom_comm = "commentaire";
			
			}
			
			if($nb_de_comm != 1 AND $nb_de_comm != 0)
			{
			
				$nom_comm = "commentaires";
			
			}
	
	
				  
echo '
			

<h1 class="accordion_toggle">'.$nb_de_comm.' '.$nom_comm.'</h1>

		<div class="accordion_content">
			
            <div id="horizontal_container">
			
				<p>

				
				
				
					<div id="vertical_nested_container">
					
						
						Nouveau commentaire
						
						
							<table border="0" width="600" align="center"><tr><td>
							
							
							<div align="left">
							
							
							<form method="post" action="" name="formulaire">


							<fieldset style="border-color:#66CCFF">
							
							<legend style="color:#0066FF">Pseudo</legend>
							<table border="0" cellpadding="2" width="50%" align="left"><tr><td>
							
							<div align="left">
							<input class="input" name="pseudo" type="text" value="">
							</div>
							</td></tr></table>
							</fieldset>

							<fieldset style="border-color:#66CCFF;">
							
							<legend style="color:#0066FF">Message</legend>
							<table border="0" cellpadding="2" width="90%" align="left"><tr><td>
							
							<table border="0" width="580" align="center" height="500" bgcolor="#FFFFFF" cellpadding="0" cellspacing="0" bordercolor="#0066FF">
							<tr>
							<td>


						';
							
									
									if($_SERVER['SERVER_NAME'] == "emilie.jarsaillon.free.fr")
									{
										$ligne = "http://emilie.jarsaillon.free.fr";
										$url_comm = "/view.php";
									}
									
									elseif($_SERVER['SERVER_NAME'] == "localhost")
									{
										$ligne = "http://localhost/tests/site_emilie";
										$url_comm = "/tests/site_emilie/view.php";
									}
							
							

echo '
							<input type="hidden" id="FCKeditor1" name="FCKeditor1" value="" style="display:none" />
							<input type="hidden" id="FCKeditor1___Config" value="SkinPath='.$ligne.'/gestion/fckeditor/editor/skins/office2003/" style="display:none" />
							<iframe id="FCKeditor1___Frame" src="'.$ligne.'/fckeditor/editor/fckeditor.html?InstanceName=FCKeditor1&amp;Toolbar=Default" width="100%" height="100%" frameborder="0" scrolling="no"></iframe>
							
							
							</td>
							</tr>
							</table>
							
							</td>
							</tr>
							</table>
							
							</fieldset>
							

							<br>
							
							<div align="center"><input class="livre_ok" type="submit" value="Valider" /></div>
							</div>
							
							<input type="hidden" name="timestamp" value="'.time().'">
							<input type="hidden" name="view_id" value="'.$donnees[''.$type_req.'_id'].'">
							<hr style="color:#66CCFF;">
							
							</td></tr></table></form>
							   
					
	
';


	$req_affiche_comm = mysql_query('SELECT * FROM commentaires WHERE id_view="'.$donnees[''.$type_req.'_id'].'" AND type="'.$type.'" AND animal="'.$animal_get.'" ORDER BY timestamp');

	while ($donnees_affiche = mysql_fetch_array($req_affiche_comm))
	{
		echo '
		
		<table border="0" width="680"><tr><td>
		
		<b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Par '.$donnees_affiche['pseudo'].' le '.date('d/m/Y', $donnees_affiche['timestamp']).' à '.date('H', $donnees_affiche['timestamp']).'h'.date('i', $donnees_affiche['timestamp']).' :</b>
		<br>
		<br>
		<table border="0" width="670"><tr><td width="25"></td><td>'.$donnees_affiche['message_html'].'</td></tr></table>
		
		</td></tr></table>
		';
		
		
	}



echo '
					</p>

			</div>
			
		</div>
		


';
	
		
		
		  
		  
		  
		  
		 echo '</td></tr>'; // fin du tr pour les comm

?>



-------------

Voici donc mon problème, j'éspère que vous pourrez m'aider même si j'ai une partie de code que je n'ai pas crée moi même..

Merci de m'avoir lu, bonne journée.

2 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
je n'ai pas le courage de tout lire mis déja:

$code1 = array('\'Comic Sans MS\'', '\'Courier New\'', '\'Times New Roman\'');

$code2 = array('Comic Sans MS', 'Courier New', 'Times New Roman');

$messageHTML = str_replace($code1, $code2, $messageHTML);

$postedValue = str_replace($code1, $code2, $postedValue);


peut être avantageusement remplacé par:

$postedValue = stripslashes( $postedValue);
0
Psix Messages postés 105 Date d'inscription   Statut Membre Dernière intervention   5
 
Merci de m'avoir répondu, en effet cela est plus pratique mais j'ai toujours le même problème..
0