|
Page : 1 2 Page Précédente | |
Auteur | Sujet : Des objets en attributs de classe. |
Publicité | Posté le 15-03-2007 à 18:13:13 |
dwogsi Défaillance cérébrale... | Dans le constructeur de ta classe Activite tu fait bien quelque chose comme ça :
Message édité par dwogsi le 15-03-2007 à 18:17:56 --------------- -- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/ |
Misssardonik prévisible a posteriori | Ah. Je me disais bien que j'avais oublié un truc, çe truc devait être ça. J'essaierai de rajouter ça. Merci Message édité par Misssardonik le 15-03-2007 à 19:21:23 --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
Misssardonik prévisible a posteriori | Bon, en fait ça ne fonctionne toujours pas.
Message édité par Misssardonik le 16-03-2007 à 10:22:45 --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
anapajari s/travail/glanding on hfr/gs; | euh c'est dans le constructeur de la classe Activite qu'il fallait le rajouter |
Misssardonik prévisible a posteriori | Euh oui pardon, c'est bien dans Activite que je l'ai mis. --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye | tu as bien ajouté un include du fichier définissant ta classe date? --------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori | J'ai bien fait un :
Message édité par Misssardonik le 16-03-2007 à 11:47:19 --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye | Tu peux montrer le code de tes deux classes (les parties intéressantes, juste - déclarations des membres, constructeurs, ce qui te sort l'erreur)? Message édité par skeye le 16-03-2007 à 11:50:15 --------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori | Bon...
--------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
Publicité | Posté le 16-03-2007 à 12:13:57 |
skeye | dans afficher, fais un print_r($this->debut), pour voir? --------------- Can't buy what I want because it's free - |
PunkRod Digital Mohawk | J'suis pas sur de moi mais j'ai un doute : 'date' ne serait pas considéré comme une commande php protégée ? |
Misssardonik prévisible a posteriori |
Ca ne fait rien du tout... Par contre quand (dans un autre fichier) je fais
Là le début de l'activité n°3 est bien affiché (j'ai défini la methode __toString() dans Date, bien sûr).
Ca ne change rien non plus... Message cité 1 fois Message édité par Misssardonik le 16-03-2007 à 14:49:49 --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye |
--------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori |
Bah non, je trouve ça bizarre aussi, mais non. Si je fais, pour être sûr (dans la fonction afficher() ):
Bah ça me fait: print_r fait juste en dessous: Et rien entre les deux. J'ai peut-être oublié un truc, mais là je sèche. Message édité par Misssardonik le 16-03-2007 à 15:07:29 --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye | Ton $this->debut n'existe pas à ce moment là, donc.
--------------- Can't buy what I want because it's free - |
rufo Pas me confondre avec Lycos! | c'est en php4 ou php5? Je dirais php4 vu que le constructeur est déclaré comme ça : __construct()
Message édité par rufo le 16-03-2007 à 15:24:41 |
skeye | ah non __construct c'est php5. --------------- Can't buy what I want because it's free - |
rufo Pas me confondre avec Lycos! |
skeye | mais si le serveur est en php4 ça expliquerait qu'il passe pas dedans... --------------- Can't buy what I want because it's free - |
rufo Pas me confondre avec Lycos! | faut faire gaffe aussi au mode "compatible php4". En php5, vaut mieux le désactiver (zend.ze1_compatibility_mode à off). Moi, j'ai eu des pb avec ce truc... |
skeye | Jamais eu de pb, perso. Et heureusement, parce-que j'ai encore de vieux bouts de php4 qui trainent et dont j'ai pas le temps de me débarrasser. --------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori | Bon. Dans un fichier de test, je fais:
avec, dans la fonction afficher() de la classe Activite:
Date Object ( [annee:private] => 2007 [mois:private] => 03 [jour:private] => 13 [heure:private] => 19 [minute:private] => 00 [seconde:private] => 00 ) print_r fait juste en dessous: Donc le premier print_r (celui avant l'appel de la fonciton afficher()) passe bien, ce qui veut dire que l'objet a bien été créé. Par contre le print_r qui est dans la fonciton afficher() ne passe pas. Message édité par Misssardonik le 16-03-2007 à 16:20:37 --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye | et ta fonction get() elle fait quoi exactement? il n'y a vraiment rien entre? --------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori | Ma fonction get de la classe Activite:
--------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye | Je vais faire l'idiot, mais si tu fais un print_r($this->get('debut')) à la place? --------------- Can't buy what I want because it's free - |
anapajari s/travail/glanding on hfr/gs; | s'koi ce debut qui traine tout seul dans ton charger_date? Manque pas des quotes la? Et pis ça t'arrechera de mettre tes fonctions en private/public/protected histoire que tout soit bien clair? Je sais que PHP est permissif mais la s'vraiment pas bo Message cité 1 fois Message édité par anapajari le 16-03-2007 à 16:39:14 |
Misssardonik prévisible a posteriori |
Je ne vois pas où tu veux en venir, tu veux dire quoi ? si je remplace
par
Si c'est ça, alors oui c'est idiot: ça plante le service web.
Je ne vois pas de quoi tu parles, tu veux préciser ? EDIT: Ah oui exact, il semble manquer des quotes. Bon bah je les ai rajoutées, ça change rien :?
Il vaut l'id de l'employé concerné par l'activité, mais maintenant que tu le dis je ne vois pas bien pourquoi j'ai mis ça...bon, je mets $this->id à la place (comme ça on charge les dates de début et de fin pour l'activité concernée), ça me semble plus logique. Mais en attendant, ça ne fonctionne toujours pas.
Je prends note Message cité 1 fois Message édité par Misssardonik le 16-03-2007 à 17:27:20 --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye |
--------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori | Ah, oui d'accord.
--------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
rufo Pas me confondre avec Lycos! | ben oui, là, ça boucle get() qui appelle get() qui appelle get() qui... |
skeye |
--------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori | Eh bien, l'attribut de Activite s'appelle bien $debut
--------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye | Bon, ya une feinte quelque part, là, quand même...tu ne fais pas une modif quelque part en utilisant ton get(), là? --------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori | Bon, reprise des hostilités...
--------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye | Le fait d'utiliser une chaine passée en paramètre pour le nom de l'attribut à renvoyer fout la merde, amha.
--------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori | Allons bon. Et comment je pourrais faire autrement qu'avec une chaine ? --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye | Je ne sais pas si php prévoit qu'on puisse accéder à un membre d'une classe via une variable, tout bêtement.
--------------- Can't buy what I want because it's free - |
Misssardonik prévisible a posteriori | Pour modifier un truc j'utilise une fonction modifier($attribut, $valeur) qui donne $valeur à $attribut (après quelques vérifications). Mais en fait ce que tu suggères c'est de faire une fonction différente pour modifier chaque attribut ? ça m'a l'air super pas pratique Enfin bon, je vais quand même essayer. Message édité par Misssardonik le 19-03-2007 à 10:38:07 --------------- Que va-t-il se passer cette gelgamar ? vous le découvrirez janamont à 20h |
skeye | Oui, c'est ce que je suggère, et qui se fait dans tous les langages "normaux" de ma connaissance. --------------- Can't buy what I want because it's free - |
Publicité | Posté le |
Page : 1 2 Page Précédente |
Sujets relatifs | |
---|---|
[AS] Problème tout bête de classe/AttachMovie | [C++] STL - list : doit contenir uniquement des objets dynamiques ?? |
Au secours! VB6 : Création dynamique d'objets dans datareport | inclusion de fichiers de classe ayant le meme nom |
[C++] Classe génériques et pointeur (Dev cpp) | Récuper les noms des variables correspondant à des objets |
[résolu] Probleme d'appel d'un objet dans ma classe | tableau a deux dimensions d'objets |
typer paramètres d'une méthode de classe | |
Plus de sujets relatifs à : Des objets en attributs de classe. |