Parse error: syntax error, unexpected '}'...

Résolu/Fermé
Xogno - 18 déc. 2010 à 17:03
 Xogno - 18 déc. 2010 à 19:00
Bonjour,

Voila, je suis en train de faire un site web et je rencontre un petit problème avec une page... mais seulement quand je le mets chez un hebergeur (gratuit) car en local (avec wampserver) ça marche nickel.

Voici l'erreur :

Parse error: syntax error, unexpected '}' in ***/amis.php on line 1


et voici le code de la page "amis.php" (mais c'est assez long :/ ) :

<?php include("session.php"); ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="nl" >
   <head>
       <title>Amis</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	   <link rel="stylesheet" media="screen" type="text/css" title="Exemple" href="design1.css" />
	   <script type="text/javascript">
		<!--
		function confirmation(lien) {
			var answer = confirm("Voulez vraiment supprimer cette personne de vos amis?")
			if (answer){
				alert("Supprimé !")
				window.location = lien;
			}
			else{
				alert("Vous avez annulé")
			}
		}
		// -->
		</script>

   </head>

	<body id="contenu-iframe1" >
	
	
	<h2>Liste d'amis</h2>
	
	<div><a style="color:#FFA500;" href="ajouter_amis.php">Ajouter un ami</a></div>
	<ul id="liste_amis">
	<?php 
		if(isset($_GET['suppr_ami']))
			{
				//on récupère l'id de l'ami qu'on veut supprimer
				$id_suppr=addslashes(htmlspecialchars(($_GET['suppr_ami'])));
				
				//on récupère l'id de l'utilisateur qui va suppr un ami
				$matricule_proprietaire=$_SESSION['id'];
				
				//on récupère la liste des amis de l'utilisateur
				$retour=mysql_fetch_row(mysql_query("SELECT amis FROM amis WHERE matricule_proprietaire='".$matricule_proprietaire[0]."'"));
				$ancienne_liste_amis = $retour[0]; 
				
				//on récupère le mail de l'ami qu'on veut supprimer
				$mail_ami_a_supprimer=mysql_fetch_row(mysql_query("SELECT mail FROM comptes WHERE matricule_proprietaire='".$id_suppr."'"));
				$infos_mail_ami_a_supprimer=mysql_fetch_array(mysql_query("SELECT * FROM comptes WHERE matricule_proprietaire='".$id_suppr."'"));
				
				//on va retirer de la liste des amis le mail de l'ami qu'il faut supprimer
				$nouvelle_liste_amis=preg_replace('#[-]+'.$mail_ami_a_supprimer[0].'#','',$ancienne_liste_amis);
				
				//on met à jour la liste d'amis de l'uitlisateur!
				mysql_query("UPDATE amis SET amis='".$nouvelle_liste_amis."'  WHERE matricule_proprietaire='".$matricule_proprietaire[0]."'");
				
				echo '<div>Vous avez supprimé '.$infos_mail_ami_a_supprimer['prenom'].' '. $infos_mail_ami_a_supprimer['nom'] .'de vos amis</div>';
			}
			

		if($_SESSION['connexion']=="connected")
				{
					//on affiche la lsite d'attente de validation
					$matricule_proprietaire=$_SESSION['id'];
					
					$retour=mysql_fetch_array(mysql_query("SELECT amis_a_valider FROM valider_amis WHERE matricule_proprietaire= '".$matricule_proprietaire[0]."'"));
					
					$retour2 = $retour[0]; 
					$mails_amis = explode("-", $retour2);
					$nbr_amis = substr_count($retour2, '-');
					
					
					if($retour2!= NULL)
					{
						?> <fieldset style="border-color:#FFA500;width:80%;margin-bottom:15px;" ><legend>En attente de validation</legend><?php
						for ($nombre_de_lignes = 1; $nombre_de_lignes <= $nbr_amis; $nombre_de_lignes++)
							{
								$donnee_ami=mysql_fetch_array(mysql_query('SELECT * FROM comptes WHERE mail="'.$mails_amis[$nombre_de_lignes].'"'));
								$matricule_proprio = $donnee_ami['matricule_proprietaire'];		
											
											?>
								<li class="amis"> 
									<div class="first-letter" >
										<?php echo $donnee_ami['prenom'];?> <?php echo $donnee_ami['nom']; ?> 
										
									</div>
												
								</li>
								<?php
							?> </fieldset><?php
							}
					}
					//on affiche la lsiet d'amis
					
					$retour=mysql_fetch_row(mysql_query("SELECT amis FROM amis WHERE matricule_proprietaire='".$matricule_proprietaire[0]."'"));
					$retour2 = $retour[0]; 
					$mails_amis = explode("-", $retour2);
					$nbr_amis = substr_count($retour2, '-');
					$nbr_amis;
					
					
					
					for ($nombre_de_lignes = 1; $nombre_de_lignes <= $nbr_amis; $nombre_de_lignes++)
						{
						
							$donnee_ami=mysql_fetch_array(mysql_query('SELECT * FROM comptes WHERE mail="'.$mails_amis[$nombre_de_lignes].'"'));
							$matricule_proprio = $donnee_ami['matricule_proprietaire'];
							
							
							?>
							<li class="amis"> 
								<div class="first-letter" >
								<a type="button" onclick="confirmation('<?php echo 'amis.php?suppr_ami='.$matricule_proprio; ?>')" class="italique" >
									<img src="images/delete-icon.png" alt="delete" title="delete"  />
								</a>
								<a type="button" onclick="confirmation('<?php echo 'messagerie.php?envoyer_message='.$matricule_proprio; ?>')" class="italique" >
									<img src="images/mail-icon.png" alt="mail" title="Envoyer message"  />
								</a>
								<?php echo $donnee_ami['prenom'];?> <?php echo $donnee_ami['nom']; ?> 
								</div>
								
							</li>
							<?php
						}
				}
		

	?>
	<ul>
	
	</body>
</html>


et voici la page que j'inclus au début, "session.php" :

<?php 
	session_start();

	ini_set('display_errors', 1);
	ini_set('error_reporting', E_WARNING);

	// on se connecte a la BDD
		include("connexion_BDD.php");
		

	if(isset($_GET["deco"]))
		{
			$deco= addslashes($_GET["deco"]);
			if ($deco==1)
				{
					$_SESSION['connexion']="";
					session_destroy();
				}
		}	
	

	else if(isset($_POST['mail']) AND isset($_POST['mdpasse']))
							{
								$mail=addslashes(htmlspecialchars($_POST['mail']));
								$mdpasse_entre=addslashes(htmlspecialchars($_POST['mdpasse']));
								
								//on vérifie si l'utilisateur existe
									$connexion_mail_existe =mysql_fetch_row(mysql_query("SELECT count(mail) FROM comptes WHERE mail='".$mail."' limit 1"));
									$utilisateur_existe =$connexion_mail_existe[0];
										if($utilisateur_existe==1)
											{
												//on vérifie si il a entré le bon mot de passe.
													$mdpasse_utilisateur_recupere =mysql_fetch_row(mysql_query("SELECT mdpasse FROM comptes WHERE mail='".$mail."'"));
													$mdpasse_utilisateur= $mdpasse_utilisateur_recupere[0];

													if($mdpasse_utilisateur==$mdpasse_entre)
														{
															$_SESSION['prenom']=mysql_fetch_array(mysql_query("SELECT prenom FROM comptes WHERE mail='".$mail."'"));
															$_SESSION['nom']=mysql_fetch_array(mysql_query("SELECT nom FROM comptes WHERE mail='".$mail."'"));
															$_SESSION['id']=mysql_fetch_array(mysql_query("SELECT matricule_proprietaire FROM comptes WHERE mail='".$mail."'"));
															$_SESSION['connexion']="connected";
															$_SESSION['error']="";
															?> 

															<?php
														}
													else
														{
															$_SESSION['error']="mdpasse";
														}
											}
										else 
											{
												$_SESSION['error']="mail";
											}
							}

?>


Voila, je pense pas que je dois mettre "connexion_BDD.php" car il n'y a pas du tout } dedans, juste mysql_connect...

J'espère que vous pourrez m'aider, si vous avez besoin d'information en plus n'hésitez pas à me le demander ;)

Merci d'avance,

Xogno



5 réponses

Zero_hp Messages postés 132 Date d'inscription lundi 13 décembre 2010 Statut Membre Dernière intervention 29 janvier 2011 17
18 déc. 2010 à 17:51
j'ai malheureusement pas de réponse.

Je peu simplement te dire que dans ton code il traîne des "<?php" et "?>" qui ne servent a rien. Tu ferais bien de métre des ; apres chaque instruction en JS aussi.

Voila, bon courage
0
Voila, j'ai enlevé les "<?php" et "?>" qui ne servaint à rien :), sinon en php, je mets tout le temps des ; après mes instructions (si j'en ai loupés pourrait tu me dire où stp ?), pour le JS c'est un code trouvé sur internet (car je ne sais pas faire de JS) mais j'ai rajoutés les ; :) , merci
0
Zero_hp Messages postés 132 Date d'inscription lundi 13 décembre 2010 Statut Membre Dernière intervention 29 janvier 2011 17
18 déc. 2010 à 18:04
je vient de remarquer a la ligne 37
$id_suppr=addslashes(htmlspecialchars(($_GET['suppr_ami'])));
tu une paire de parenthèse en trop. vu que l'instruction est placé entre les deux premières accolade, c'est peut-être cela qui produit l'erreur.
0
non c'est pas ça :/ mais quand même merci pour avoir pris le temps de regarder :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bon j'ai réussi a régler le problème, apparemment je ne dois pas laisser d'espace après le <?php include("session.php"); ?>, je suis pas sûr que ce soit ca mais, en tout cas, maintenant ça marche ! :D
0