Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 22-04-2014 18:32:47

okayassu
Membre
Inscription : 08-03-2014
Messages : 16

[PHP] heritage de classe

Bonsoir,

je suis censée me servir des attributs $nom et $prenom de la classe personne pour la classe stagiaire et la classe administratif

mais lorsque j'instancie mes deux classes  dans mon lanceur je reçois cette erreur :


Fatal error: Cannot redeclare class Personne in C:\wamp\www\Personne.php on line 3

voici mes classes crées ainsi que mon lanceur , je ne trouve pas où j'aurais declaré ma classe personne plusieurs fois .

si quelqu'un avait une petite idée :)

merci d'avance :)


Ma classe personne:

<?php

class Personne{
    protected $nom;
    protected $prenom;
   
    public function __construct($nom, $prenom) {
        $this->nom = $nom;
        $this->prenom = $prenom;
    }

    public function getNom() {
       return $this->nom;
   }

   public function getPrenom() {
       return $this->prenom;
   }

   public function setNom($nom) {
       $this->nom = $nom;
   }

   public function setPrenom($prenom) {
       $this->prenom = $prenom;
   }
           
}



Ma classe Administratif:

<?php

include './Personne.php';

class Administratif extends Personne {

    private $poste;

    public function __construct($nom, $prenom, $poste) {
        parent::__construct($nom,$prenom);
        $this->poste = $poste;
    }
    public function getPoste() {
        return $this->poste;
    }

    public function setPoste($poste) {
        $this->poste = $poste;
    }   
}

Ma classe Stagiaire:

<?php
include './Personne.php';

class Stagiaire extends Personne{
       
        private $numero;
     
function __construct($nom,$prenom,$numero) {
           parent::__construct($nom,$prenom);
           $this->numero = $numero;
       } 
       public function getNumero() {
           return $this->numero;
       }

       public function setNumero($numero) {
           $this->numero = $numero;
       }
}

et enfin Mon lanceur:


<?php

include './Administratif.php';
include './Stagiaire.php';

$stagiaire=new Stagiaire("mister","T","22");
$admin= new Administratif ($nom,$prenom,"stagiaire");

echo "nom:{$stagiaire->getNom()} prenom:{$stagiaire->getPrenom()} "
. " numero:{$stagiaire->getNumero()}post{$admin->getPoste()}";

Dernière modification par okayassu (22-04-2014 20:48:26)

Hors ligne

#2 22-04-2014 20:49:19

okayassu
Membre
Inscription : 08-03-2014
Messages : 16

Re : [PHP] heritage de classe

je suis desolée ,je n'arrive pas à inserer les balises de code afin que ce soit plus lisible

Hors ligne

#3 23-04-2014 10:59:42

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 947

Re : [PHP] heritage de classe

Salut okayassu,

Rien de compliqué pourtant...
Regarde ton avant-dernier post :
1. j'ai sélectionné toute la partie entre <?php et le ; ligne 10
2. J'ai ensuite cliqué sur <>
3. Enfin Après la mention code, dans la balise ouvrante, j'ai ajouté = PHP.

Mais ça, parce que je suis paresseux parce que sinon :
1. Juste avant <?php je tape :
    crochet ouvrant [  puis code=PHP  et enfin le crochet fermant ]
2. Je vais ligne 10 après le ; et je tape
   crochet ouvrant [  puis  \code et enfin le crochet fermant ]

Et le tour est joué...

Quant à ton problème, désolé je ne connais pas le php.
De plus, j'ai un autre fer au feu...

Y a-t-il un amateur de php sur le forum ?
Si oui, merci de répondre à okayassu !

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#4 23-04-2014 19:19:20

okayassu
Membre
Inscription : 08-03-2014
Messages : 16

Re : [PHP] heritage de classe

Salut Yoshi ,

promis je ferai mieux la prochaine fois pour les balises de code ^^

au sujet de mon petit soucis  : problème résolu  :)

je mets la solution si quelqu'un passait par le forum et rencontrait le même souci que moi :

en remplaçant mes

include './Personne.php

par 

include  once './Personne.php

il n'inclut qu'une seule fois la classe donc pas de doublon

voila voila

ps: t as vu Yoshi les belles balises? ^^

bonne soirée

Dernière modification par okayassu (23-04-2014 19:20:59)

Hors ligne

Réponse rapide

Veuillez composer votre message et l'envoyer
Nom (obligatoire)

E-mail (obligatoire)

Message (obligatoire)

Programme anti-spam : Afin de lutter contre le spam, nous vous demandons de bien vouloir répondre à la question suivante. Après inscription sur le site, vous n'aurez plus à répondre à ces questions.

Quel est le résultat de l'opération suivante (donner le résultat en chiffres)?
soixante neuf moins soixante deux
Système anti-bot

Faites glisser le curseur de gauche à droite pour activer le bouton de confirmation.

Attention : Vous devez activer Javascript dans votre navigateur pour utiliser le système anti-bot.

Pied de page des forums