Formulaire php de lecture dans bd sql

Résolu
mathus28 Messages postés 19 Statut Membre -  
 mathus28 -
Bonjour a tous
j'ai cree une fomulaire avec listes deroulantes et cases a cocher permettant de lire des donnees dans ma base sql. mais lorsque j'execute ca m'affiche cette erreur:

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in d:\test\form.php on line 18

je me casse la tete depuis mais j'y arrive pas. c'est pk je lance ce sos

merci d'avance pour les reponses
Configuration: Windows XP
Firefox 2.0.0.8

8 réponses

  1. R4f Messages postés 441 Statut Membre 62
     
    Bonjour,

    Un peu de code serait bienvenu pour t'aider à débugger ton problème.

    Raph
    0
  2. mathus28 Messages postés 19 Statut Membre
     
    voici mon code( ne vous marrez pas pleaz)

    <!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" lang="fr">
    <head>
    <title>IMMOb</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
    <p>Veuillez entrer les info pr la recherche de votre future piole:</p>
    <form action="imo.php" method="post">
    <p>
    <label> La ville</label> :<input type="text" name="ville" value="cotonou" /><br />
    Cochez le type d'immobilier que vous recherchez:
    <input type="checkbox" name="villa" id="villa" checked="checked"/> <label for="villa">Villa</label>
    <input type="checkbox" name="appartement" id="appartement" /> <label for="appartement">Appartement</label>
    <input type="checkbox" name="hotel" id="hotel" /> <label for="hotel">Hotel</label><br />

    Veuillez indiquer le nombre de pieces de votre futur immobilier :<br />
    <input type="radio" name="nbp" value="1" id="1" checked="checked"/> <label for="1">1 Piece</label><br />
    <input type="radio" name="nbp" value="2" id="2" /> <label for="2">2 Pieces</label><br />
    <input type="radio" name="nbp" value="3" id="3" /> <label for="3">3 Pieces</label><br />
    <input type="radio" name="nbp" value="4" id="4" /> <label for="4">4 Pieces</label><br />
    <input type="radio" name="nbp" value="5" id="5" /> <label for="5">5 Pieces</label><br />

    Budget entre :<input type="number" name="prix1" /> <label> et</label> :<input type="number" name="prix2" /><br />
    <input type="submit" value="Valider" />
    </p>
    </form>
    <p>Cette page est réservée a ceux ki en on dans la tete ! ;-)</p>
    </body>
    </html>
    if (isset($_POST['ville']))
    {
    <?php
    mysql_connect("localhost","root","");
    mysql_select_db("test");

    $reponse=mysql_query("SELECT * FROM imobloc ") or die(mysql_error());

    while ($donnees=mysql_fetch_array($reponse) )
    {
    if (isset($_POST['villa']) | isset($_POST['appartement']) OR isset($_POST['hotel']))
    {
    if (isset($_POST['prix1']) AND isset($_POST['prix2']))
    {
    if (isset($_POST['nbp']))
    {
    $reponse=mysql_query("SELECT * FROM imobloc WHERE villeloc=$_POST['ville'], typpeloc=$_POST['villa'] | typpeloc=$_POST['appartement'] | typpeloc=$_POST['hotel'],nbr_pieces_loc=$_POST['1'], prixloc >= $_POST['prix1']AND prix <= $_POST['prix2']") or die(mysql_error());
    while ($donnees=mysql_fetch_array($reponse)
    {
    echo $donnees['descriptif'];?><br />
    <?php echo $donnees['prixloc'];?><br />
    <?php echo $donnees['nompro'];?><br />
    <?php echo $donnees['contacts'];?><br />
    <?php echo $donnees['etatloc'];?><br /><?php
    }
    }
    }
    }

    }
    }
    mysql_close();
    ?>
    0
  3. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    salut,

    cette erreur là tu l'a croisera des centaines de fois.
    il faut souvent regarder à la ligne précédente (17 pour toi).

    mais en regardant le code, il y a quelque chose qui cloche :
    if (isset($_POST['ville']))
    {
    <?php 

    tu mets du code PHP avant l'ouverture de balise, donc il cherche l'ouverture du 'if()'.
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. R4f Messages postés 441 Statut Membre 62
     
    Tu transforme
    if (isset($_POST['ville']))
    {
    <?php
    


    en

    <?php
    if (isset($_POST['ville']))
    {
    


    Bref, c'est ce que suggérait à juste titre notre ami(e) Dalida

    Raph
    0
  6. mathus28
     
    cool ca marche!
    mais la meme erreur se repete au niveau de la ligne de code:

    $reponse=mysql_query("SELECT * FROM imobloc WHERE villeloc=$_POST['ville'], typpeloc=$_POST['villa'] | typpeloc=$_POST['appartement'] | typpeloc=$_POST['hotel'],nbr_pieces_loc=$_POST['1'], prixloc >= $_POST['prix1']AND prix <= $_POST['prix2']") or die(mysql_error());

    apparement le 'if ' precedant cette ligne de code est inclus dans le code php. alors pourquoi est ce que cette erreur se repete-elle?
    je serai ravis d'etre eclairé la dessus
    merci
    0
  7. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    salut,

    en tout cas tu ne peux pas obtenir la valeur de l'élément d'un tableau, à 'intérieur des guillemets.

    et aère ton code si tu veux pouvoir trouver les erreurs !
    $reponse = mysql_query( 'SELECT * FROM imobloc WHERE villeloc='.$_POST['ville'].
    													', typpeloc='.$_POST['villa'].
    													' | typpeloc='.$_POST['appartement'].
    													' | typpeloc='.$_POST['hotel'].
    													', nbr_pieces_loc='.$_POST['1'].
    													', prixloc >= '.$_POST['prix1'].
    													' AND prix <= '.$_POST['prix2'] ) or die(mysql_error());
    
    0
  8. mathus28
     
    Ca marche!!
    trop cool, big respect et surtout MERCI
    0