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 :

problème de syntaxe POO


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 10
    Points : 7
    Points
    7
    Par défaut problème de syntaxe POO
    Bonjour,

    cela fait un moment que je n'ai plus touché à PHP...
    J'ai une instruction à traduire en PHP, pour creer un formulaire orienté objet( ce que je ne maitrise pas du tout , mais j'essaye ).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    echo "<form name='f' action='index.php?page=".$numero_de_page+1."' method='post' >"; 
    Pour chaque question $q de $this->pages[$numero_de_page] 
    echo $q->texte; 
    Si $q->type=="radio" 
    pour chaque reponse $r de $q->reponses[] 
    echo "<input type='radio' name='".$q->id."' value='".$r."' >"; 
    fin de pour 
    fin de si
    je l'ai traduis ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function afficher($numero_de_page){ 
        echo("<form name='f' action='index.php?page=".$numero_de_page+1./"' method='post'>");   
         foreach ($this->page[$numero_de_page] as $q) { 
          echo $q->$texte; 
         if ($type=="radio"){ 
          foreach ($q->reponses[''] as $r) { 
          echo ("<input type='radio' name='".$q->id."' value='".$r."'>");}
    bon ou pas bon?

    Est ce que je suis plus censée dire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for $this->page[$numero_de_page]==$q
    ?
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $f=$q->afficher($this->pages[$numero_de_page])
    Pourriez-vous m'aider ? merci d'avance.

  2. #2
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonjour,
    bon ou pas bon?
    Ou la question : est-ce que ca fonctionne ?

    La bonne synthaxe est bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    foreach ($this->page[$numero_de_page] as $q)
    Ici tu ne définies jamais $type. Tu voulais faire $q->type plutôt ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($q->type === 'radio')

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Super Thomas, merci pour ta réponse.
    Mon parseur avait du mal a passer aux noeuds suivants, du coup je ne pouvais pas trop verifier tous mes codes.
    La page blanche n'étant plus blanche, je m'en vais de ce pas réctifier mes $q->type!

    A...très bientôt je crois, et merci pour la réponse claire, rapide, et pas agressive ( ba oui, j'avais un peu peur des : "vas lire la FAQ et arrêtes de poster pour rien!")
    donc merci merci merci merci

  4. #4
    Membre averti Avatar de BornBanane
    Homme Profil pro
    dev
    Inscrit en
    Mars 2007
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Mars 2007
    Messages : 284
    Points : 416
    Points
    416
    Par défaut
    Quelques petites erreures je pense :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo("<form name='f' action='index.php?page=".$numero_de_page+1./"' method='post'>");
    =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo("<form name='f' action='index.php?page='".$numero_de_page+1."' method='post'>");
    Le / est inutile et il manque un ' juste après le page=

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    foreach ($q->reponses[''] as $r) {
    =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    foreach ($q->reponses as $r) {
    Le foreach porte sur un tableau donc c'est plus logique comme ceci.

    Tu as plein d'accolades non fermées. Mais la ça dépend de la logique donc je te laisse faire

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Super, petit à petit le code est plus propre. En faite j'ai pas mal d'autres attributs, radio, texte, time etc...donc je ne vous ai donné qu'un apperçu du début du code, et j'i un peu zappé la fermeture des balises...mais elles sont là en réalité.

    Merci pour ton aide BornBanane

  6. #6
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Citation Envoyé par BornBanane Voir le message
    Quelques petites erreures je pense :
    =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo("<form name='f' action='index.php?page='".$numero_de_page+1."' method='post'>");
    Le / est inutile et il manque un ' juste après le page=
    Attention, ceci est faux, en mettant un apostrophe après page, tu termines l'attribut action. Son code était donc correct (sauf le "/").

    Les parenthèses autour de echo sont dépréciées, echo n'est pas une fonction.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<form name="f" action="index.php?page='.($numero_de_page+1).'" method="post">';

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Exacte!

Discussions similaires

  1. [POO] Probléme de syntaxe dans une classe
    Par jewelz dans le forum Langage
    Réponses: 3
    Dernier message: 03/11/2007, 03h57
  2. [Interbase] Problème de syntaxe SQL
    Par navis84 dans le forum InterBase
    Réponses: 4
    Dernier message: 22/12/2004, 17h07
  3. Problème de syntaxe
    Par Mister_FX dans le forum ASP
    Réponses: 5
    Dernier message: 30/06/2004, 10h01
  4. Problème de syntaxe ADO ...
    Par bendev dans le forum ASP
    Réponses: 2
    Dernier message: 15/04/2004, 14h38
  5. Réponses: 2
    Dernier message: 08/03/2004, 15h10

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