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 :

afficher titre categorie


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut afficher titre categorie
    bonjour,

    voila je suis débutante en php5 on m avait Donner une solution pour afficher les categorie de ma base sql via ma class categorie mais j aimerai une autre solution.

    voici mon fichier class que j ai retravailler un peu si vous pouvez m aider a l ameliorer avec des conseils je veux bien de vos conseils.

    je cherche a afficher le titre de mes catgeories dans mon menu voila ce que j avais fait.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    while ($donnees = mysql_fetch_array($requete) )
    {
    $id_cate=$objet->constructbyid($i);
    echo ('<li>');
    echo $titre=$objet->getById($id_cate);
    echo ('</li>');
    }
    mais je suis un peu perdu.

    merci de votre aide.

  2. #2
    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
    Qu'est ce qui ne te conviens pas avec ta methode actuelle ?

  3. #3
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    et bien j ai un erreur qui s'affiche sur la classe affiche_categorie sur constructbyid().et je ne comprend pas pourquoi de plus rien ne s'affiche avant cette erreur si quelqu un trouve des erreurs.

  4. #4
    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
    Et quelle est cette erreur ?

  5. #5
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    je ne pourrai dire ca que demain mon ordi portable est pas chez moi, mais sinon est ce que mon appel de cette classe que j ai envoyer est bonne est ca devrait bien afficher tout les titre des catégories.

  6. #6
    Membre éclairé Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Points : 831
    Points
    831
    Par défaut
    Bonjour,

    Comment est initialisée $i ?

    Fred

  7. #7
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    voici l erreur qui apparait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
          Notice: Undefined variable: i in C:\wamp\www\AchatEnfolie2\include\navigation.php on line 19
        *
     
          Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\AchatEnfolie2\include\class\class.categorie.php on line 72
    merci

  8. #8
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    donc j ai modifier je m etais tromper:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    while ($donnees = mysql_fetch_array($requete) )
    {
    $id_cate=$objet->constructbyid($donnees);
    echo ('<li>');
    echo $titre=$objet->getById($id_cate);
    echo ('</li>');
    }
    le i est en faite $donnees mais j ai tj l erreur de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\AchatEnfolie2\include\class\class.categorie.php on line 72
    merci.

  9. #9
    Membre éclairé Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Points : 831
    Points
    831
    Par défaut
    Bonjour,

    Ma question n'était pas innocente, d'après ton message d'erreur, la variable $i n'est effectivement pas gérée.

    Ensuite, il semble que ta requête sql n'est pas exécutée avant de parcourir le résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    // Exécution de la requête
    $result = mysql_query($requete);
     
    // Lecture des données ligne par ligne
    while ($donnees = mysql_fetch_array($result)) {
     ...
    }
    Fred

  10. #10
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    en faite je m expliquer j aimerai juste afficher les titre de mles categorie je pense que c est un pb de mes fonctions, voila je l ai ai modifier :

    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
    public function getById($id)
    	{
    		$req="SELECT * from 'categorie' where 'id'=$id";
    		//echo $req
    		$reponse = mysql_query ($req);
    		while($donnees=mysql_fetch_array($reponse))
    		{
    			$this->id=$donnees['id'];
                            $this->titre=$donnees['titre'];
                            $this->description=$donnees['description'];
                            $this->estDansMenu=$donnees['estDansMenu'];
                            $this->estDansContact=$donnees['estDansContact'];
                            $this->estVisible=$donnees['estVisible'];
                            $this->Categorie=$donnees['Categorie'];
                   }
    	}
     public function constructbyid($rang){
    		$req="SELECT * FROM `categorie`";
    		$reponse = mysql_query($req);
    		$x='0';
    		while ($donnees = mysql_fetch_array($reponse) )
    	    {$x++;
                        if($x==$rang){
    				return($donnees['id_i']);
    			}
                }
            }
     
            public function donneLeTitre($rang){
                $id=$this->constructbyid($rang);
                $this->getById($id);
                return(getTitre());
            }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public function getTitre() {
    		return (string) $this->titre;
    	}
    voici message erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\AchatEnfolie2\include\class\class.categorie.php on line 71
     
    Fatal error: Call to undefined function getTitre() in C:\wamp\www\AchatEnfolie2\include\class\class.categorie.php on line 98
    merci de votre aide.

  11. #11
    Membre éclairé Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Points : 831
    Points
    831
    Par défaut
    N'y aurait-il pas un souci avec les quotes ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $req=('SELECT * FROM categorie where id="$id"');
    Ici $id va être pris tel quel et non pas remplacée par sa valeur, non ?

    J'aurais plutôt codé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $req="SELECT * FROM categorie where id=$id";
    Fred

  12. #12
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    bonjour,

    voila j ai modifier la fonction :
    et voici l erreur qui reste :

    Fatal error: Call to undefined function getTitre() in C:\wamp\www\AchatEnfolie2\include\class\class.categorie.php on line 98
    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
     
    public function getById($id)
    	{
    		$req="SELECT * FROM `categorie` where id='$id'";
    		//echo $req
    		$reponse = mysql_query($req);
    		while($donnees=mysql_fetch_array($reponse))
    		{
    			$this->id=$donnees['id'];
                            $this->titre=$donnees['titre'];
                            $this->description=$donnees['description'];
                            $this->estDansMenu=$donnees['estDansMenu'];
                            $this->estDansContact=$donnees['estDansContact'];
                            $this->estVisible=$donnees['estVisible'];
                            $this->Categorie=$donnees['Categorie'];
                   }
    	}
     
            public function constructbyid($rang){
    		$req="SELECT * FROM `categorie`";
    		$reponse = mysql_query($req);
    		$x='0';
    		while ($donnees = mysql_fetch_array($reponse) )
    	    {$x++;
                        if($x==$rang){
    				return($donnees['id_i']);
    			}
                }
            }
     
            public function donneLeTitre($rang){
                $id=$this->constructbyid($rang);
                $this->getById($id);
                return(getTitre());
            }
    y aurait il une solution?
    MERCI.

  13. #13
    Membre éclairé Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Points : 831
    Points
    831
    Par défaut
    La solution serait que la fonction getTitre() existe .
    Fred

  14. #14
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    elle existe deja est dans la page je l ai afficher tout a l heure.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    	public function getTitre() {
    		return (string) $this->titre;
    	}
    c est pour ca que je ne comprend pas qu il ne la trouve pas.

  15. #15
    Membre éclairé Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Points : 831
    Points
    831
    Par défaut
    Tu dois faire référence à l'objet pour appeler la méthode : $this->getTitre().
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
            public function donneLeTitre($rang){
                $id=$this->constructbyid($rang);
                $this->getById($id);
                return($this->getTitre());
            }
    Fred

  16. #16
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    merci c est un oublie de ma part mais je n ai plus de message d erreur mais rien ne s 'affiche dans mon menu.

  17. #17
    Membre éclairé Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Points : 831
    Points
    831
    Par défaut
    Citation Envoyé par kate59 Voir le message
    donc j ai modifier je m etais tromper:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    while ($donnees = mysql_fetch_array($requete) )
    {
    $id_cate=$objet->constructbyid($donnees);
    echo ('<li>');
    echo $titre=$objet->getById($id_cate);
    echo ('</li>');
    }
    le i est en faite $donnees mais j ai tj l erreur de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\AchatEnfolie2\include\class\class.categorie.php on line 72
    merci.
    Que renvoie la méthode getById() ?
    A quoi sert la méthode donneLeTitre() ?
    Fred

  18. #18
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    mon ami m avait dit de les utilsier mais je pense que qu il a dut se tromper en regardant bien
    1/ je doit recuperer les id des categorie avec cosntrcutbyid
    2/apres afficher avec donneLeTitre

    c est ce que je pensait moi?
    DONC CA FERAIT CA.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    /*********recuperer tout les données de la table categorie**********/
    $requete = $bdd->sendQuery ('SELECT * FROM categorie');
    /**************boucle pour edcuperer les donnees dans $row************/
    $objet=new categorie;
    while ($donnees = mysql_fetch_array($requete) )
    {
    $id_cate=$objet->constructbyid($donnees);
    echo ('<li>');
    echo $objet->donneLeTitre($id_cate);
    echo ('</li>');
    }
    mais ca n affiche tj rien.

    mais j ai tester en remplacant dans le where du select de getbyid en mettant une valeur ex 1.
    et ca m a afficher le titre de la catgeorie livre.
    en faite je suis un peu perdu avec ces focntions si vous a plus simple pour afficher les titre des categorie de ma base je susi partante.
    merci.

    je susi perdu. si quelqu un peu m aider ca serait super.

  19. #19
    Membre éclairé Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Points : 831
    Points
    831
    Par défaut
    Et en codant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req='SELECT * from categorie where id='.$id;
    dans getById(), qu'est-ce que ça donne ?

  20. #20
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    ca donne une erreur de synthax mais pour moi ca ne peut pas etre ca, il mettrait une erreur.
    j ai l impression que l'id de getbyid ne recoit rien.?

Discussions similaires

  1. Afficher titre musique VLC sur teamspeak
    Par nack94 dans le forum Audio
    Réponses: 1
    Dernier message: 12/05/2015, 00h57
  2. Comment afficher titre joué dans Msn?
    Par florian-radio dans le forum Windows Forms
    Réponses: 9
    Dernier message: 03/11/2009, 13h27
  3. Afficher titre en fonction d'une variable
    Par RENAUDER dans le forum Langage
    Réponses: 9
    Dernier message: 05/02/2009, 15h40
  4. Réponses: 7
    Dernier message: 03/10/2006, 23h15

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