IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

parse error php


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 382
    Points : 151
    Points
    151
    Par défaut parse error php
    bonjour a tous,

    Je crée 3 menus déroulants en php avec récupération de données dans une base mysql.

    Voici le code de la page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    <?php
    echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n");
    /* Variables de connexion : ajustez ces paramètres selon votre propre environnement */
    $serveur = "localhost";
    $admin   = "root";
    $mdp     = "";
    $base    = "regions";
    /* On récupère si elle existe la valeur de la région envoyée par le formulaire */
    $idr = isset($_POST['region'])?$_POST['departement']:null;
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" xml:lang="fr" />
    <title>Sélectionner un département selon la région choisie</title>
    </head>
    <body style="font-family: verdana, helvetica, sans-serif; font-size: 85%">
     
     
    <h3>Trouver le salon le plus proche de chez vous</h3>
    <?php
    /* On établit la connexion à MySQL avec mysql_pconnect() plutôt qu'avec mysql_connect()
    *  car on aura besoin de la connexion un peu plus loin dans le script */
    $connexion = mysql_pconnect($serveur, $admin, $mdp);
    if($connexion != false)
    {
        $choixbase = mysql_select_db($base, $connexion);
        $sql1 = "SELECT `id_region`, `region`".
        " FROM `region`".
        " ORDER BY `id_region`";
        $rech_regions = mysql_query($sql1);
        $code_region = array();
        $region = array();
        /* On active un compteur pour les régions */
        $nb_regions = 0;
        if($rech_regions != false)
        {
            while($ligne = mysql_fetch_assoc($rech_regions))
            {
                array_push($code_region, $ligne['id_region']);
                array_push($region, $ligne['region']);
                /* On incrémente de compteur */
                $nb_regions++;
            }
        }
        ?>
    <form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" id="chgdept">
    <fieldset style="border: 1px double #333399">
    <legend>Sélectionnez une région</legend>
    <select name="region" id="region" onchange="document.forms['chgdept'].submit();">
      <option value="-1">- - - Choisissez une région - - -</option>
        <?php
        for($i = 0; $i < $nb_regions; $i++)
        {
    ?>
      <option value="<?php echo($code_region[$i]); ?>"<?php echo((isset($idr) && $idr == $code_region[$i])?" selected=\"selected\"":null); ?>><?php echo($region[$i]); ?></option>
    <?php
        }
        ?>
    </select>
        <?php
        mysql_free_result($rech_regions);
        /* On commence par vérifier si on a envoyé un numéro de région et le cas échéant s'il est différent de -1 */
        if(isset($idr) && $idr != -1)
        {
            /* Cération de la requête pour avoir les départements de cette région */
            $sql2 = "SELECT `id_departement`, `departement`".
            " FROM `departement`".
            " WHERE `id_region` = ". $idr ."".
            " ORDER BY `id_departement`;";
            if($connexion != false)
            {
                $rech_dept = mysql_query($sql2, $connexion);
                /* Un petit compteur pour les départements */
                $nd = 0;
                /* On crée deux tableaux pour les numéros et les noms des départements */
                $code_dept = array();
                $nom_dept = array();
                /* On va mettre les numéros et noms des départements dans les deux tableaux */
                while($ligne_dept = mysql_fetch_assoc($rech_dept))
                {
                    array_push($code_dept, $ligne_dept['id_departement']);
                    array_push($nom_dept, $ligne_dept['departement']);
                    $nd++;
                }
                /* Maintenant on peut construire la liste déroulante */
                ?>
    <select name="departement" id="departement">
                <?php  
                for($d = 0; $d<$nd; $d++)
                {
                    ?>
      <option value="<?php echo($code_dept[$d]); ?>"<?php echo((isset($dept_selectionne) && $dept_selectionne == $code_dept[$d])?" selected=\"selected\"":null); ?>><?php echo($nom_dept[$d]." (". $code_dept[$d] .")"); ?></option>
                    <?php
                }
    ?>
    </select>
    <?php
    }
    ?>
     
     
    <?php
    /* On commence par vérifier si on a envoyé un numéro de région et le cas échéant s'il est différent de -1 */
            /* Cération de la requête pour avoir les départements de cette région */
            $sql3 = "SELECT `id_ville`, `ville`".
            " FROM `ville`".
            " WHERE `id_dept` = ". $idr ."".
            " ORDER BY `id_ville`;";
            if($connexion != false)
            {
                $rech_ville = mysql_query($sql3, $connexion);
                /* Un petit compteur pour les départements */
                $nd = 0;
                /* On crée deux tableaux pour les numéros et les noms des départements */
                $code_ville = array();
                $nom_ville = array();
                /* On va mettre les numéros et noms des départements dans les deux tableaux */
    					while($ligne_ville = mysql_fetch_assoc($rech_ville))
    					{
    						array_push($code_ville, $ligne_ville['id_ville']);
    						array_push($nom_ville, $ligne_ville['ville']);
    						$nd++;
    					}
                /* Maintenant on peut construire la liste déroulante */
                ?>
    <select name="ville" id="ville">
                <?php  
    					for($d = 0; $d<$nd; $d++)
    					{
    						?>
    		  <option value="<?php echo($code_ville[$d]); ?>"<?php echo((isset($ville_selectionne) && $ville_selectionne == $code_ville[$d])?" selected=\"selected\"":null); ?>><?php echo($nom_ville[$d]." (". $code_ville[$d] .")"); ?></option>
    						<?php
    					}
    ?>
    </select>
    <?php
     
            /* Un petit coup de balai */
            mysql_free_result($rech_ville);
     
    ?>
    <br /><input type="submit" name="ok" id="ok" value="Envoyer" />
    </fieldset>
    </form>
    <?php
        /* Terminé, on ferme la connexion */
        mysql_close($connexion);
    }
    	else
    		{
        /* Si on arrive là, c'est pas bon signe, il faut vérifier les 
        * paramètres de connexion, mot de passe, serveur pas démarré etc... */
    ?>
    </head>
    <body>
    <p>Un incident s'est produit lors de la connexion à la base de données, veuiillez essayer à nouveau ultérieurement.</p>
    <?php
    		}
     
    ?>
    </body>
    </html>
    Mon probleme :
    Il me met une erreur que je n'arrive pas a resoudre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Parse error: parse error in c:..\index\index.php on line 169
    La ligne 169 étant la dernière ligne de la page

    Est ce quelqu'un aurait-il une idée??

    merci d'avance

    Cordialement

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    51
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 51
    Points : 43
    Points
    43
    Par défaut
    salut
    première erreur: tu as écrit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <p>Un incident s'est produit lors de la connexion à la base de données, veuiillez essayer à nouveau ultérieurement.</p>
    il faut mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <p>Un incident s\'est produit lors de la connexion à la base de données, veuillez essayer à nouveau ultérieurement.</p>
    (l anti slash avant l'apostrophe)


    une 2eme chose : j ai l impression qu'il te manque des accolades } pour fermer tous tes "if" ...

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Les IF des lignes 25 et 64 n'ont effectivement pas de fin }

    Par contre il n'y a pas besoin d'echapper le guillemet puisqu'on est pas dans la code PHP.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    51
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 51
    Points : 43
    Points
    43
    Par défaut
    ah oui effectivement! pardon ....

Discussions similaires

  1. Parse error PHP 5.2.17
    Par unt2013 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 05/06/2013, 13h05
  2. Réponses: 10
    Dernier message: 21/07/2006, 08h44
  3. [PHP-JS] Erreur de type : Parse Error
    Par calitom dans le forum Langage
    Réponses: 6
    Dernier message: 19/07/2006, 23h10
  4. PHP parse error
    Par malbarre dans le forum Langage
    Réponses: 4
    Dernier message: 18/07/2006, 12h16
  5. [php] prob parse error :S
    Par darkdj59 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 29/05/2006, 12h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo