Souci de syntaxe sur une ligne PHP

Fermé
Evelyne31 Messages postés 55 Date d'inscription mardi 17 juillet 2012 Statut Membre Dernière intervention 13 septembre 2016 - 25 juil. 2012 à 14:06
 Evelyne31 - 26 juil. 2012 à 18:51
Bonjour,
J'ai une erreur de syntaxe sur une ligne d'un formulaire (syntax error, unexpected ')', expecting ',' or ';'). Il s'agit d'un problème de " ou de ' ou de ) ... Quelqu'un aurait la gentillesse de vérifier ? Je me casse la tête avec ça depuis hier et je ne trouve pas.
D'avance un grand merci.
Evelyne

<option value='-1'>- - - Choisissez un pays- - -</option>";
            while($ligne = mysql_fetch_assoc($rech_pays))
            echo"<option value=\"{$ligne['id_pays']}\" ".($idp == $ligne['id_pays'])?" selected=\"selected\" ":null).>"{$ligne['nomPays']}</option>";
A voir également:

5 réponses

Utilisateur anonyme
25 juil. 2012 à 17:28
Soucis de concaténation! {$ligne['id_pays']} et compagnie qui ne sont pas interprétés comme du PHP.
0
Bonsoir PoZZi,
Je te remercie pour ta réponse.
Je suis désolée mais je ne vois pas où est l'erreur. Pourrais-tu, STP, m'aiguiller ?
Un grand merci par avance,
Evelyne
0
<option value='-1'>- - - Choisissez un pays- - -</option>"; 
            while($ligne = mysql_fetch_assoc($rech_pays)) 
            echo"<option value=\"",$ligne['id_pays'],"\" ".($idp == $ligne['id_pays'])? " selected=\"selected\"":null.">",$ligne['nomPays'],"</option>";
0
PoZZI,
A nouveau 1000 mercis. Demain je décortique ton code car je veux tout bien comprendre.
J'ai à présent la même erreur quelques lignes plus loin et c'est très bien car je prendrai exemple sur ce que tu viens de me transmettre pour rectifier.
Très bonne soirée et encore merci,
Evelyne
0
Utilisateur anonyme
26 juil. 2012 à 12:11
Problème de concaténation, comme je te l'ais dit hier. La différence n'était pas faite entre le PHP et les chaines de caractères à certains endroits.

J'ai remplacé les accolades par des virgules.
Problème de concaténation à la fin de ta ternaire: pas de parenthèse après le NULL, mais plutôt un point et un guillemet (concaténation :))

De rien et bonne journée Evelyne !
0

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

Posez votre question
Bonsoir,
Je galère toujours avec mon formulaire PHP, si quelqu'un pouvait m'aider ?
Merci à PoZZi pour les problèmes de concaténation. C'est réglé mais je vais réviser le sujet car je n'ai pas tout compris.
Mon problème : il s'agit d'un menu déroulant imbriqué où on choisit un pays et ensuite les départements concernés s'affichent. Les pays et les départements sont extraits d'une base MySQL.
Impossible de faire afficher quoi que ce soit. Les menus sont là mais vides !!! Je m'arrache les cheveux. Mes requêtes SQL sont correctes car quand les fais dans PHPMyAdmin ça marche.
Je ne demande pas à ce qu'on fasse le boulot à ma place, mais juste quelques explications où ça cloche.
Merci d'avance et bonne soirée,
Evelyne

<?php
$idp=(empty($_POST['nomPays'])?-1:intval($_POST['nomPays']));
$idp=(($idp<-1)||($idp==0)?-1:$idp);
$iddp=(empty($_POST['nomDepartement'])?-1:intval($_POST['nomDepartement']));
$iddp=(($iddp<-1)||($iddp==0)?-1:$iddp);
$connexion = mysql_pconnect($serveur, $admin, $mdp);
if($connexion)
{
    if(mysql_select_db($base, $connexion))
    {
    $rech_pays = mysql_query("SELECT 'id_pays', 'nomPays' FROM 'PAYS' ORDER BY 'id_pays'");
        if($rech_pays)
        {
            echo"<form action=\"\" method=\"post\" id=\"chgdepartement\">
<fieldset style=\"border: 3px double #333399\">
<legend>Sélectionnez un pays</legend>
<select name=\"nomPays\" id=\"nomPays\" onchange=\"document.forms['chgdepartement'].submit();\">
<option value='-1'>- - - Choisissez un pays- - -</option>"; 
            while($ligne = mysql_fetch_assoc($rech_pays)) 
            echo"<option value=\"",$ligne['id_pays'],"\" ".($idp == $ligne['id_pays'])? " selected=\"selected\"":null.">",$ligne['nomPays'],"</option>";
            mysql_free_result($rech_pays);
            if($idp!=-1)
            {
                $rech_departement = mysql_query("SELECT 'id_departement', 'nomDepartement' FROM 'DEPARTEMENT' WHERE 'id_pays' = $idp ORDER BY 'id_departement'");
                if($rech_departement)
                {
echo"<select name=\"nomDepartement\" id=\"nomDepartement\" onchange=\"document.forms['chgdepartement'].submit();\">
<option value=\'-1'>- - - Choisissez un département- - -</option>";
                    while($ligne = mysql_fetch_assoc($rech_departement))
            while($ligne = mysql_fetch_assoc($rech_departement)) 
            echo"<option value=\"",$ligne['id_departement'],"\" ".($iddp == $ligne['id_departement'])? " selected=\"selected\"":null.">",$ligne['nomDepartement'],"</option>";
                     mysql_free_result($rech_departement);
                    if($iddp!=-1)
                    {
                        //actions si les champs sont sélectionnés
                    }
                }
                else
                    echo"<div>Une erreur c'est produite:".mysql_error().'</div>';
            }
            else
            {
                echo"<div>Vous devez sélectionner un pays</div>";
            }
            echo"</form>";
        }
        else
            echo"<div>Une erreur c'est produite:".mysql_error().'</div>';
    }
}
?>
0