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 :

[Tableaux] Erreur dans Boucle


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de mickado
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 154
    Points : 85
    Points
    85
    Par défaut [Tableaux] Erreur dans Boucle
    de ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $r=q("select me.login, me.id, me.fname, me.lname, me.city, me.country, me.state, (YEAR(CURRENT_DATE)-YEAR(pr.birthdate)) - (RIGHT(CURRENT_DATE,5)<RIGHT(pr.birthdate,5)) as age from members me, profiles pr where me.id=pr.id and $sql_period order by pr.ldate desc LIMIT 0,$lnr_mo");
    if (!e($r)){
    echo "<TABLE width=90% BORDER=0 CELLPADDING=0 CELLSPACING=0 align=center valign=top>";
    echo "<tr><td><b>Nick</b></td><td><b>Name</b></td><td><b>Location</b></td><td><b>Age</b></td></tr>";
    while ($m=f($r)){echo "<tr><td><a href=mem.php?mid=$m[id]>$m[login]</a></td><td>$m[fname]</td><td>$m[country]</td><td>$m[age]</td></tr>";};echo "</TABLE>";};?>
    Je suis passer à :

    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
    $r=q("select me.login, me.id, me.fname, me.lname, me.sex, me.city, me.country, me.state, (YEAR(CURRENT_DATE)-YEAR(pr.birthdate)) - (RIGHT(CURRENT_DATE,5)<RIGHT(pr.birthdate,5)) as age from members me, profiles pr where me.id=pr.id and $sql_period order by pr.ldate desc LIMIT 0,$lnr_mo");
    ($m=f($r));
    if (!e($r) && $m[sex]=="Homme")
    {
    echo "<TABLE width=90% BORDER=0 CELLPADDING=0 CELLSPACING=0 align=center valign=top>";
    echo "<tr><td><b>Pseudo</b></td><td><b>Prenom</b></td><td><b>Ville</b></td><td><b>Age</b></td></tr>";
    while echo "<tr><td><a href=mem.php?mid=$m[id]>$m[login]</a></td><td>$m[fname]</td><td>$m[city]</td><td>$m[age]</td></tr></TABLE>";
    }
    elseif (!e($r) && $m[sex]=="Femme")
    {
    echo "<TABLE width=90% BORDER=0 CELLPADDING=0 CELLSPACING=0 align=center valign=top>";
    echo "<tr><td><b>Pseudo</b></td><td><b>Prenom</b></td><td><b>Ville</b></td><td><b>Age</b></td></tr>";
    while echo "<tr><td><a href=mem.php?mid=$m[id]>$m[login]</a></td><td>$m[fname]</td><td>$m[city]</td><td>$m[age]</td></tr></TABLE>";
    }
    ?>
    et j'ai cette erreur :
    Parse error: parse error, unexpected T_ECHO, expecting '(' in /homepages/33/d140741298/htdocs/rencontre/inc/m_online.php on line 14
    Où est l'erreur ?

    Merci.

  2. #2
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Bah t'en as fait quoi des conditions de tes while

  3. #3
    Membre régulier Avatar de mickado
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 154
    Points : 85
    Points
    85
    Par défaut
    Ben je ne sais pas comment les rajouter enfaite

  4. #4
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Citation Envoyé par mickado
    Ben je ne sais pas comment les rajouter enfaite


    Ah bah on va pas pouvoir l'inventer pour toi hein

    Il faudrait donner des vrais noms aux fonctions aussi parce que e, m, f pour savoir ce que ça fait c'est un peu chaud quand même...

  5. #5
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 19
    Points : 9
    Points
    9
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while (condition a tester)
    {
          instructions a executer tant que ta condition est verifiée;
    }

  6. #6
    Membre éclairé Avatar de J0r_x
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2006
    Messages
    804
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2006
    Messages : 804
    Points : 751
    Points
    751
    Par défaut
    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
     
    $r=q("select me.login, me.id, me.fname, me.lname, me.sex, me.city, me.country, me.state, (YEAR(CURRENT_DATE)-YEAR(pr.birthdate)) - (RIGHT(CURRENT_DATE,5)<RIGHT(pr.birthdate,5)) as age from members me, profiles pr where me.id=pr.id and $sql_period order by pr.ldate desc LIMIT 0,$lnr_mo");
    echo "<TABLE width=90% BORDER=0 CELLPADDING=0 CELLSPACING=0align=center valign=top>";
    echo "<tr><td><b>Pseudo</b></td><td><b>Prenom</b></td><td><b>Ville</b></td><td><b>Age</b></td></tr>";      
    while ($m=f($r)); {
     if (!e($r) && $m[sex]=="Homme") {   
     
        echo "<tr><td><a href=mem.php?mid='$m[id]'>'$m[login]'</a></td><td>$m[fname]</td><td>'$m[city]'</td><td>'$m[age]'</td></tr>";
     }
     elseif (!e($r) && $m[sex]=="Femme"){
     
        echo "<tr><td><a href=mem.php?mid='$m[id]'>'$m[login]'</a></td><td>'$m[fname]'</td><td>'$m[city]'</td><td>'$m[age]'</td></tr>";
     }
    }
    echo '</TABLE>';
    ?>

  7. #7
    Membre régulier Avatar de mickado
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 154
    Points : 85
    Points
    85
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $r=q("select me.login, me.id, me.fname, me.lname, me.sex, me.city, me.country, me.state, (YEAR(CURRENT_DATE)-YEAR(pr.birthdate)) - (RIGHT(CURRENT_DATE,5)<RIGHT(pr.birthdate,5)) as age from members me, profiles pr where me.id=pr.id and $sql_period order by pr.ldate desc LIMIT 0,$lnr_mo");
    ($m=f($r));
    if (!e($r) && $m[sex]=="Homme")
    {
    echo "<TABLE width=90% BORDER=0 CELLPADDING=0 CELLSPACING=0 align=center valign=top>";
    echo "<tr><td><b>Nick</b></td><td><b>Name</b></td><td><b>Location</b></td><td><b>Age</b></td></tr>";
    while ($m=f($r)){echo "<tr><td><a href=mem.php?mid=$m[id]>$m[login]</a></td><td>$m[fname]</td><td>$m[country]</td><td>$m[age]</td></tr>";};echo "</TABLE>";}
    elseif (!e($r) && $m[sex]=="Femme")
    {
    echo "<TABLE width=90% BORDER=0 CELLPADDING=0 CELLSPACING=0 align=center valign=top>";
    echo "<tr><td><b>Nick</b></td><td><b>Name</b></td><td><b>Location</b></td><td><b>Age</b></td></tr>";
    while ($m=f($r)){echo "<tr><td><a href=mem.php?mid=$m[id]>$m[login]</a></td><td>$m[fname]</td><td>$m[country]</td><td>$m[age]</td></tr>";};echo "</TABLE>";}
    ?>
    j'ai fait ça, il n'y a plus d'erreur mais du coup plus rien ne s'affiche

  8. #8
    Membre éclairé Avatar de J0r_x
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2006
    Messages
    804
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2006
    Messages : 804
    Points : 751
    Points
    751
    Par défaut
    test le script que j'ai mis au dessus.

  9. #9
    Membre régulier Avatar de mickado
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 154
    Points : 85
    Points
    85
    Par défaut
    Citation Envoyé par J0r_x
    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
     
    $r=q("select me.login, me.id, me.fname, me.lname, me.sex, me.city, me.country, me.state, (YEAR(CURRENT_DATE)-YEAR(pr.birthdate)) - (RIGHT(CURRENT_DATE,5)<RIGHT(pr.birthdate,5)) as age from members me, profiles pr where me.id=pr.id and $sql_period order by pr.ldate desc LIMIT 0,$lnr_mo");
    echo "<TABLE width=90% BORDER=0 CELLPADDING=0 CELLSPACING=0align=center valign=top>";
    echo "<tr><td><b>Pseudo</b></td><td><b>Prenom</b></td><td><b>Ville</b></td><td><b>Age</b></td></tr>";      
    while ($m=f($r)); {
     if (!e($r) && $m[sex]=="Homme") {   
     
        echo "<tr><td><a href=mem.php?mid='$m[id]'>'$m[login]'</a></td><td>$m[fname]</td><td>'$m[city]'</td><td>'$m[age]'</td></tr>";
     }
     elseif (!e($r) && $m[sex]=="Femme"){
     
        echo "<tr><td><a href=mem.php?mid='$m[id]'>'$m[login]'</a></td><td>'$m[fname]'</td><td>'$m[city]'</td><td>'$m[age]'</td></tr>";
     }
    }
    echo '</TABLE>';
    ?>
    Il n'y a pas d'erreur mais tout comme moi rien ne s'affiche

  10. #10
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Le while tourne dans le vide à cause du point-virgule juste après c'est volontaire ???

    Il y a aussi un problème d'espaces dans les attributs de ta table, et un conseil avec un peu de rigueur ça serait aussi mieux (balises en minuscules, attributs entourés par des guillemets, noms des fonctions comme déjà dit).

  11. #11
    Membre éclairé Avatar de J0r_x
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2006
    Messages
    804
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2006
    Messages : 804
    Points : 751
    Points
    751
    Par défaut
    Petite erreur de ma part pour le ";" désolé faut l'enlever.
    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
     
    $r=q("select me.login, me.id, me.fname, me.lname, me.sex, me.city, me.country, me.state, (YEAR(CURRENT_DATE)-YEAR(pr.birthdate)) - (RIGHT(CURRENT_DATE,5)<RIGHT(pr.birthdate,5)) as age from members me, profiles pr where me.id=pr.id and $sql_period order by pr.ldate desc LIMIT 0,$lnr_mo");
    echo "<TABLE width="90%" BORDER="0" CELLPADDING="0" CELLSPACING="0" align="center "valign="top">";
    echo "<tr><td><b>Pseudo</b></td><td><b>Prenom</b></td><td><b>Ville</b></td><td><b>Age</b></td></tr>";      
    while ($m=f($r)) {
     if (!e($r) && $m[sex]=="Homme") {   
     
        echo "<tr><td><a href=mem.php?mid='$m[id]'>'$m[login]'</a></td><td>$m[fname]</td><td>'$m[city]'</td><td>'$m[age]'</td></tr>";
     }
     elseif (!e($r) && $m[sex]=="Femme"){
     
        echo "<tr><td><a href=mem.php?mid='$m[id]'>'$m[login]'</a></td><td>'$m[fname]'</td><td>'$m[city]'</td><td>'$m[age]'</td></tr>";
     }
    }
    echo '</TABLE>';
    ?>

  12. #12
    Membre régulier Avatar de mickado
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 154
    Points : 85
    Points
    85
    Par défaut
    j'ai lever le point-virgule et ça marche merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Tableaux] erreur dans un code
    Par zabdaniel dans le forum Langage
    Réponses: 5
    Dernier message: 05/12/2007, 15h04
  2. [Tableaux] Erreur dans un UPDATE
    Par Flash38A dans le forum Langage
    Réponses: 4
    Dernier message: 31/10/2007, 11h33
  3. [Tableaux] blocague dans boucle
    Par Doksuri dans le forum Langage
    Réponses: 3
    Dernier message: 14/02/2007, 15h24
  4. [Tableaux] erreur dans une fonction
    Par eclipse012 dans le forum Langage
    Réponses: 2
    Dernier message: 29/01/2007, 09h58
  5. [Tableaux] erreur dans mon code
    Par kcizth dans le forum Langage
    Réponses: 5
    Dernier message: 27/10/2006, 10h43

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