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] problème en classe


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 55
    Par défaut [Tableaux] problème en classe
    Bonjour. j'essaye d'ecrire un code dans php. Mais quand je lexecute il me donne l'erreur suivante:
    Notice: Undefined offset: 0 in c:\program files\easyphp1-8\www\php\page1.php on line 27

    Notice: Undefined offset: 1 in c:\program files\easyphp1-8\www\php\page1.php on line 30

    Le code est le suivant:
    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
    36
    37
    <?php
    class Commande {
    var $prixRam = 6;
    var $prixHD = 8;
    var $nomClient;
    var $listemateriel;
     
    function Commande() {
    $this->nomClient = "SansNom";
    }
     
     
    function ajouterRam($nombre) {
    $this->listemateriel[0] += $nombre;
    }
    function ajouterHD($nombre) {
    $this->listemateriel[1] += $nombre;
    }
    function calculerPrix() {
    $montant_Ram = $this->listemateriel[0] * $this->prixRam;
    $montant_HD = $this->listemateriel[1] * $this->prixHD;
    return $montant_Ram + $montant_HD;
    }
    function afficherCommande() {
    echo "Commande du client : ".$this->nomClient;
    echo "<BR>materiel(s) 'Ram' : ".$this->listemateriel[0];
    echo "<BR>materiel(s) 'HD' : ".$this->listemateriel[1];
    echo "<HR>Totale de votre commande : ".$this->calculerPrix();
    echo " Euros<BR>";
    }
    }
    $client1 = new Commande();
     
    $client1->ajouterRam(5);
    $client1->ajouterHD(2);
    $client1->afficherCommande();
    ?>

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Rien de grave : c'est juste parce que vous utilisez les indices 0 et 1 de l'attribut tableau listemateriel alors qu'ils n'existent pas auparavant. Il vous suffirait d'ajouter dans le constructeur cette ligne pour régler cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->listemateriel = array(0, 0);

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 55
    Par défaut
    merci julp ca fonctionne

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

Discussions similaires

  1. Problème de classe
    Par DeusXL dans le forum DirectX
    Réponses: 15
    Dernier message: 04/12/2005, 14h37
  2. [Tableaux] problème de concaténation
    Par ludovik dans le forum Langage
    Réponses: 3
    Dernier message: 13/09/2005, 13h24
  3. [Tableaux] problème avec while
    Par zimotep dans le forum Langage
    Réponses: 3
    Dernier message: 11/09/2005, 10h30
  4. [Tableaux] Problème avec Switch case
    Par philippef dans le forum Langage
    Réponses: 4
    Dernier message: 07/09/2005, 16h37
  5. [FLASH MX2004] Problème de classe
    Par JulPoWeR dans le forum Flash
    Réponses: 1
    Dernier message: 10/07/2005, 22h51

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