[RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line 43

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line 43

Re: [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line

par Spols » 23 déc. 2015, 08:45

en fait la variable $valeur['iddemande']. vient de la premiére page ici
foreach($titres as $valeur)
                    {
                      echo "<th class=\"th\">".$valeur."</th>";
                    }
                    echo
Si cela vient de là tu as un gros problème de compréhension.
Car soit $valeur est un tableau et peut-être que $valeur['iddemande'] est défini mais alors echo "<th class=\"th\">".$valeur."</th>"; t'affichera "<th class="th">array</th>"
Soit $valeur est un String( ou int ou float) et ton echo est correct mais tu n'obtiendra rien de bon avec $valeur['iddemande']

Dans tous les cas, lorsque tu veux récupèrer des variables GET, tu dois penser à la possibilité que l'on aile sur la page sans ces paramètres. et donc prévoir une exception dans le cas où $_GET['id'] est indéfini. soit une valeur par défaut soit une redirection, soit un message d'erreur.

$iddemande=(empty($_GET["id"]) ? 'valeur par défaut' : $_GET["id"];

Re: [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line

par sharigan » 22 déc. 2015, 19:17

aprés modification voici mon code
detaildemande.php
<?php
					require_once 'connexionbdd.php';
					
					
								// Récupération des variables 

					$iddemande=$_GET["id"];
					$requete = "SELECT * FROM  demande WHERE  iddemande=".$iddemande ; 
								$pdo = connexion(); 
								$resultat = $pdo->query($requete);
								if(!$resultat)
								{
									echo "Lecture impossible";
								}
								else
								  {
									
										$ligne = $resultat->fetch(PDO::FETCH_ASSOC); // Tableau associatif

									}	
?>
et le message d'erreur: Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 't' in 'where clause'' in C:\wamp\www\ projet\detaildemande.php on line 10

Re: [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line

par sharigan » 22 déc. 2015, 18:07

ca m'affiche l'erreur Notice: Undefined index: id in C:\wamp\www\ projet\detaildemande.php on line 7

Re: [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line

par sharigan » 22 déc. 2015, 17:59

en fait la variable $valeur['iddemande']. vient de la premiére page ici
foreach($titres as $valeur)
                    {
                      echo "<th class=\"th\">".$valeur."</th>";
                    }
                    echo

Re: [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line

par Spols » 22 déc. 2015, 17:45

Dans ce cas, il te faut utiliser $iddemande plutot que $valeur['iddemande']

Re: [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line

par sharigan » 22 déc. 2015, 17:40

merci pour ton aide.la seconde erreur est rectifiée.en ce qui concerne la premiére,la variable $iddemande=$_GET["id"] est recuperée je crois depuis la premiére page grace a GET?

Re: [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line

par Spols » 22 déc. 2015, 17:08

dans cette partie ci :
echo "<td class=\"bouton\"><a href=\"modifierdemande.php?id=".$valeur['iddemande']."\">Modifier</a></td>
<td class=\"bouton\"><a href=\"supprimerdemande.php?id=".$valeur['iddemande']."\">Supprimer</a></td>
<td class=\"bouton\"><a href=\"detaildemande.php?id=".$valeur['iddemande']."\">Details</a></tr>";

D'où viens ta variable $valeur['iddemande'] ?? car à mon avis elle n'est pas définie.

Ensuite, tu fabrique tes liens avec un attribut "id" et tu tente de récupèrer un attribut iddemande dans $_GET['iddemande']
ca ne colle pas.

Soit au moins 2 erreurs à corriger

Re: [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line

par sharigan » 22 déc. 2015, 16:54

si je me suis fai comprendre

Re: [RESOLU] erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line

par sharigan » 22 déc. 2015, 16:43

merci de prendre votre temps precieux pour m'aider.en fait jai un page rechercherdemande.php dont le code source ci dessous affiche quelques information sur une demande de carte enregistrée dans la base de donnée et les liens modifier,suprimer et detail(pour plus d' information)qui renvoient respectivement vers une page de modification,de suppression et de details traiter par d'autre fichier php,ici detaildemande.php qui est censé m'afficher toutes les information de la table concernée mais au lieu de ça plutot le message d'erreur: Undefined index: iddemande in C:\wamp\www\ projet\detaildemande.php on line 7



code soure rechercherdemande.php
<?php
					
					require_once 'connexionbdd.php';
					if (isset($_POST['rechercher']))
	                  {
					
						
						
							// Vérification de la saisie du mot-clef
							if(!empty($_POST['nom']))
							{
								// Récupération des variables 
								$nom = $_POST['nom'];
								$prenom = $_POST['prenom'];
								$typecarte = $_POST['typecarte'];
							
																
								// Création des requêtes de selection
								$requete = "SELECT nom AS 'nom', prenom AS 'prenom', typecarte AS 'type carte'   FROM  demande WHERE    nom  LIKE '%$nom%' AND prenom LIKE '%$prenom%' AND typecarte LIKE '%$typecarte%' ";
								$pdo = connexion(); 
								$resultat = $pdo->query($requete);
								if(!$resultat)
								{
									echo "Lecture impossible";
								}
								else{
									$nbcol = $resultat->columnCount();
									$nbuser = $resultat->rowCount();
									if($nbuser == 0)
									{
										echo "<h3>Il n'y a aucune demande  de ce type de carte enregistrée au nom ce client<h3>";
									}
									else{
										$ligne = $resultat->fetch(PDO::FETCH_ASSOC); // Tableau associatif
										$titres = array_keys($ligne);
										$ligne = array_values($ligne);
										
										echo "<h3> Resultat de la recherche :<h3> ";
										// Affichage des titres du tableau
										echo "<table class=\"resultat\" border=\"1\"><tr>";
										foreach($titres as $valeur)
										{
											echo "<th class=\"th\">".$valeur."</th>";
										}
										echo "<th class=\"th\"><img class=\"image\" src=\"modif.PNG\" alt=\"modifier\" /></th>
												<th class=\"th\"><img class=\"image\" src=\"sup.PNG\" alt=\"supprimer\" /></th>
												<th class=\"th\"><img class=\"image\" src=\"detail.png\" id=\"détail\" /></th></tr>";
										// Affichage des valeurs du tableau
										do
										{
											echo "<tr>";
											foreach($ligne as $donnees)
											{
												echo "<td>".$donnees."</td>";
											}
											echo "<td class=\"bouton\"><a href=\"modifierdemande.php?id=".$valeur['iddemande']."\">Modifier</a></td>
													<td class=\"bouton\"><a href=\"supprimerdemande.php?id=".$valeur['iddemande']."\">Supprimer</a></td>
													<td class=\"bouton\"><a href=\"detaildemande.php?id=".$valeur['iddemande']."\">Details</a></tr>";
										}
										while($ligne = $resultat->fetch(PDO::FETCH_NUM));
										echo "</table>";
									}
									
									$resultat->closeCursor();
									$pdo = null;
								}
							}
													
					}
					
?>



code source detaildemande.php
<?php
					require_once 'connexionbdd.php';
					
					
								// Récupération des variables 

					$iddemande=$_GET["iddemande"];
					$requete = "SELECT * FROM  demande WHERE  iddemande=".$iddemande ; 
								$pdo = connexion(); 
								$resultat = $pdo->query($requete);
								if(!$resultat)
								{
									echo "Lecture impossible";
								}
								else
								  {
									
										$ligne = $resultat->fetch(PDO::FETCH_ASSOC); // Tableau associatif

									}	
?>
je crois que l'erreur est dans le second traitement
cordialement

Re: erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line 43

par Ascla » 22 déc. 2015, 16:07

Si y'a encore d'autres erreurs, il faudra nous donner plus de détails.
  • Ce que tu cherches à faire
    Ce qui se passe
Dans le cas où le problème est résolu, un bouton du même nom est placé tout en haut ! :wink:

Re: erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line 43

par sharigan » 22 déc. 2015, 15:26

ok ce probleme de syntaxe est resolu merci,meme si y a d'autres erreurs je m y attendais

Re: erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line 43

par Ascla » 22 déc. 2015, 14:34

En gros à la fin de ton code, le foreach doit contenir des accolades :
if(!$resultat)
                {
                  echo "Lecture impossible";
                }
                else
                  {
                  $nbcol = $resultat->columnCount();
                  $nbuser = $resultat->rowCount();
                    $ligne = $resultat->fetch(PDO::FETCH_ASSOC); // Tableau associatif
                    $titres = array_keys($ligne);
                    $ligne = array_values($ligne);
                    foreach($titres as $valeur)
                    {
                    }
                  }
Mais bon, dans ce cas là il ne sert à rien, donc autant le supprimer.

Re: erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line 43

par sharigan » 22 déc. 2015, 13:52

suis debutant en php.accolades a mettre ou?

Re: erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line 43

par kevin254kl » 22 déc. 2015, 12:11

Bonjour, il manque les accolades de ton foreach même si il est vide, format ton code pour voir ces erreur plus facilement http://beta.phpformatter.com/.

erreur de syntaxe Parse error: syntax error, unexpected '}' in C:\wamp\www\projet\detaildemande.php on line 43

par sharigan » 22 déc. 2015, 12:05

salut a tous!suis debutant en php et je veux faire une page pour qfficher les données recuperées dans la base afin de les afficher.je me coince a un message d'erreur qui dit: Parse error: syntax error, unexpected '}' in C:\wamp\www\uba projet\detaildemande.php on line 43.si quelqu'un a une idée sur d'ou provient cet erreur
voici mon code
<?php
					require_once 'connexionbdd.php';
					
					
								// Récupération des variables 
								$nom = $_POST['nom'];
								$prenom = $_POST['prenom'];
								$typecarte = $_POST['typecarte'];
					$prenom = htmlspecialchars($_POST['prenom']);
										
					$adresse = htmlspecialchars($_POST['adresse']);
					
					$telephone = htmlspecialchars($_POST['telephone']);
					
					$email = htmlspecialchars($_POST['email']);
					
					$numcompte = htmlspecialchars($_POST['numcompte']);
										
					$agence = htmlspecialchars($_POST['agence']);
					
					$typecarte = htmlspecialchars($_POST['typecarte']);
										
					$typecompte = htmlspecialchars($_POST['typecompte']);
					
					$date = htmlspecialchars($_POST['date']);
					
					$iddemande=$_GET["iddemande"] ;
					$requete = "SELECT * FROM  demande WHERE  iddemande=".$iddemande ; 
								$pdo = connexion(); 
								$resultat = $pdo->query($requete);
								if(!$resultat)
								{
									echo "Lecture impossible";
								}
								else
								  {
									$nbcol = $resultat->columnCount();
									$nbuser = $resultat->rowCount();
										$ligne = $resultat->fetch(PDO::FETCH_ASSOC); // Tableau associatif
										$titres = array_keys($ligne);
										$ligne = array_values($ligne);
										foreach($titres as $valeur)
								  }	
?>