Bonjour,
Le 23/09/2011 18:34, Johan Cwiklinski a écrit :
Ça va vous changer un peu ! ;)
En fait, je viens du C#/.Net, donc ça me change beaucoup le PHP Objet.
Ma 1ère difficulté a été de trouver un éditeur PHP avancé, mais j'ai
trouvé NetBeans et j'en suis pour l'instant assez content. Il supporte
même le debug, c'est pas top, mais ça marche bien quand même.
C'est une question vaste, pas facile d'y répondre précisément...
Je pense qu'une idée serait de prendre le code d'une classe existante
assez simple (soit dans Galette, soit dans les plugins Auto ou Paypal),
Oui, j'ai pris le plugin Auto et il m'a bien aidé pour débuter et avoir
ma 1ère page affichée, les require_once au bon endroit, etc.
//les champs désactivés (les mêmes que sur self_adherent) - optionnel (à
priori)
$inactifs = $a->disabled_fields + $a->edit_disabled_fields;
Là, j'ai été obligée de faire un $inactif = array(); car sinon les
bonnes valeurs passées n'étaient pas stockées (justement les valeurs que
l'utilisateur n'a pas le droit de changer). Sauf que j'initialise ou
créé un utilisateur, donc j'ai besoin de pouvoir les écrire.
$ok = $member->check($valeurs, $requis, $inactifs);
Je l'aurais jamais trouvé cette méthode!
J'ai l'habitude du C# où l'on a des propriétés publiques avec des champs
privés:
private int id_adh;
public int AdherentId{
get{ return id_adh; }
set{ id_adh = value; }
}
On peut affecter des valeurs à un objet, finir avec objet->store() et
les valeurs affectées sont stockées en base comme on s'y attend. Avec
adherent, ce n'est pas le cas, si on affecte des valeurs à ce qu'on
suppose être les variables, il se passe rien, ça reste vide :-(
Bref, je n'arrivai pas à comprendre quelles variables étaient utilisées
dans l'application et quelles variables étaient utilisées par Zend DB
pour faire les insert/update.
//si tout est OK, on peut enregistrer dans la base
if ( $ok === true ) {
$member->store();
}
J'ai enfin réussi tard hier soir à faire mon insert depuis mon import.
Il me manque juste un p'tit problème : les accents ! Ah! Ah! Ah! Les
bons vieux problèmes d'encodage d'accents !
J'ai un "é" dans la base, et ça me donne "�" à l'écran !
Le système de plugins tel qu'il est implémenté actuellement reste très
rudimentaire ; je me suis cantonné à implémenter des fonctionnalités
complètement annexes, rien encore qui modifie ou étende la fiche adhérent.
Exact, dans notre cas, on aurait besoin de pouvoir dire si un champ est
modifiable ou non par l'utilisateur. Par exemple, le login ne devrait
pas pouvoir être modifiable, le reste pourquoi pas, mais le login non.
Si on pouvait ajouter la fonctionnalité à l'admin de choisir quels
champs sont modifiables ou non, ça serait cool ;)
En espérant que ça aide un peu :-)
Ben oui, j'aurai jamais trouvé la bonne méthode au milieu pour stocker
mon adherent, maintenant c'est fait, je vais pouvoir faire la même chose
avec le complément spécifique.
Merci,
Mélissa