background preloader

PHP

Facebook Twitter

Utilisation des interfaces en PHP 5. Date de publication : 19.07.2007 Par Alain Sahli (Voir tous ses articles) (Blog) Cet article traite de l'utilisation des interfaces en PHP 5. Il n'est pas destiné à des débutants et de bonnes bases en POO sont requises pour la compréhension du code fourni tout au long de l'article. I. Introduction II. Contrairement à PHP 4, PHP5 permet de gérer les interfaces . Une interface regroupe toutes les méthodes qu'une classe doit implémenter. II-A. Pour créer une interface on procède de la même manière que lorsqu'on crée une classe. II-B. L'implémentation se fait de la même manière que l'héritage, sauf que l'on utilise le mot clé " implements ". II-B-1. Comme vous pouvez le voir ci-dessous, j'ai simplement déclaré une classe "MaClasse" qui implémente l'interface "IMonInterface".

II-B-2. Lorsqu'une classe implémente plusieurs interfaces, il faut les séparer par une ',' (virgule). II-B-3. Il est désormais possible de spécifier dans une méthode quel "type" d'objet il faut passer en paramètre. II-C. CakePHP : le framework de développement rapide php - Home. Créer une interface d'administration - marcimat. Ma Graine .Net. Nous allons donc voir aujourd’hui comment réaliser cela pour notre plugin. Nous allons découvrir comment ajouter un onglet et une page à l’interface d’administration de SPIP et comment réaliser un formulaire pour gérer et stocker ces données. Je ne sais pas encore trop comment m’y prendre, mais je fais confiance à mon instinct pour trouver au fur et à mesure de l’avancement. Ce que je sais déjà, c’est que je souhaite créer un plugin offrant une interface graphique au plugin « champs extras » écrit hier et que cette interface soit accessible depuis la page « configuration » dans un onglet « champs extras ».

Ca je le sais, donc codons le ! Créer le plugin... Cela n’a maintenant plus aucun secret pour vous, on va créer ce plugin. <nom > Interface pour Champs Extras </nom > <auteur > Matthieu Marcillaud [->magraine.net] </auteur > <licence > GNU/GPL </licence > <version > 0.1 </version > Offre une interface pour g &eacute; rer des champs extras. <etat > dev </etat > <prefix > iextra </prefix > <? Interface d’administration d’un site CakePHP avec le Composant Auth. Nous souhaitons fournir à notre client un panneau d’administration pour qu’il puisse éditer lui-même le contenu de son site, par exemple un simple blog avec des Articles. Nous nous imposons plusieurs contraintes : L’administration doit être accessible à l’adresse /admin ; Toutes les actions de cet espace d’administration doivent avoir une url commençant par /admin ; L’administration doit avoir un layout différent de celui du site public ; L’accès à l’administration requiert l’authentification d’un administrateur autorisé par un couple login / mot de passe.

Nous nous limiterons ici à un seul type (ou rôle) d’utilisateur. 1. 1.1. Nous allons indiquer à CakePHP que nous souhaitons préfixer toutes les URL des actions de l’administration par /admin. A présent, si nous appelons l’adresse /admin/articles/add dans notre navigateur, cela renvoie sur l’action adminadd que nous définirons dans le Contrôleur ArticlesController. 1.2. Nous créons la vue correspondante : 1.3. Notez le paramètre ‘prefix’. [PHP] Créer un espace membre - Des comptes utilisateurs pour gérer votre site. Préparation - Inscription & activation - Connexion & déconnexion Connexion / Déconnexion : Nous arrivons à la dernière grande étape de notre module. Permettre à l’utilisateur d’ouvrir et de fermer sa session. Nous avions laissé la page index.php temporairement en plan, terminons là en affichant différents liens selon le fait que l’utilisateur soit identifié ou non : Occupons nous maintenant de la page connexion.php.

Celle-ci devra proposer un formulaire permettant de saisir notre nom d’utilisateur et notre mot de passe donc typiquement : Il est devenu également assez courant de demander l’adresse e-mail plutôt que le nom d’utilisateur. Ce n’est pas ce que nous ferons dans notre exemple mais sachez que le principe reste exactement le même, il suffit juste de modifier le nom des champs dans le code PHP vérifiant le tout une fois le formulaire soumit. Justement, nous y arrivons.