Discussion

26/05/2020 à 18h45 : m-ickael : Je n'ai rien vu (bonjour)

24/05/2020 à 21h19 : Swan : Bonsoir, En regardant ces dernières semaines sur le net j'ai vu un stop ! C'est bizarre cette sensation que même internet , s'est arrêter.. Il y a eu comme un gros coup de frein .. Vous ne trouvez pas ?

24/05/2020 à 20h56 : m-ickael : Bonjour.

21/05/2020 à 13h37 : Swan : Salut salut ^^

21/05/2020 à 07h19 : hight_tower : Bonjour et bonne journée

19/05/2020 à 17h05 : Swan : Bonjour tout le monde ^^ Bon début de semaine , avec tout pleins de Soleil ! :sun

19/05/2020 à 15h30 : m-ickael : Bonjour.

16/05/2020 à 13h25 : Sawk : Bonjour :)

16/05/2020 à 10h15 : m-ickael : Bonjour en passant.

15/05/2020 à 16h21 : Sawk : La belgique est en phase 1 de dé-confinement. On ne peut pas malheureusement recevoir ou aller chez les même personnes

14/05/2020 à 18h36 : Swan : Bon.. je vais faire mes mini-pizzas !

14/05/2020 à 18h17 : Swan : Bonjour et Bonsoir , alors cette sortie de confinement ? Nous on refait le plein du frigo !

11/05/2020 à 16h20 : m-ickael : Petit bonjour en passant ..

09/05/2020 à 20h58 : Myster : Bonjour :)

09/05/2020 à 20h12 : Sonic : Salut à tous et bon wk.

09/05/2020 à 12h39 : Sawk : Bon weekend :) Bientôt le 11 mai. Il me semble qu'en France c'est le dé-confinement non ? ;)

09/05/2020 à 11h59 : Swan : Bon week end ^^

01/05/2020 à 14h01 : Swan : Salut tout le monde ^^ Bon week end du 1er Mai !! Bon confinée , mais tout de même ;)

29/04/2020 à 12h02 : Swan : :lu Bonjour tout le monde , Même en confinement, j'avance pas, c'est dingue ça quand même ! J'ai plein de trucs en cours et rien n'avance .. Grrrr

26/04/2020 à 11h38 : Swan : :lu Bonjour à tous, Hooo un Sawk !! Ca faisait un bail :) On passe le temps , comme tout le monde , et pour moi j'ai pas le temps de m'ennuyer :p

25/04/2020 à 00h03 : Sawk : Bonsoir tout le monde, j'espère que le confinement ce passe bien pour vous :)

23/04/2020 à 11h16 : m-ickael : J'ai pas spécialement remarqué .. Chez nous non en tout cas ..

23/04/2020 à 08h58 : Swan : Bonjour à tous ^^ c'est dingue se que les prix ont augmentés dans les magasins -_-'

19/04/2020 à 11h36 : m-ickael : Pareillement :top

19/04/2020 à 11h34 : Swan : Salut à tous ^^ Et bon week end :)

18/04/2020 à 09h29 : m-ickael : Salut à tous.

16/04/2020 à 19h24 : hight_tower : Oui pas de soucis Swan, l'écolage avant tout :ok :ok

16/04/2020 à 18h08 : Swan : Salut tout le monde ^^ Désolée, si je réponds en fin d journée ou un jour sur 2, mais je suis débordée avec les devoirs des filles à la maison .. Quel plaie !

14/04/2020 à 20h39 : hight_tower : Swan, highty tu passe le bonjour en MP

14/04/2020 à 20h18 : hight_tower : Bonsoir, fais lui ton charme Swan, bonne soirée

13/04/2020 à 21h36 : Swan : Bah je comprends, c'est l'examinateur qui aime pas les personnes de 50 ans lol

12/04/2020 à 19h20 : m-ickael : Bah laisse pas tomber, mais pose les bonnes questions si tu ne comprends pas tout.

11/04/2020 à 12h30 : Swan : :lu Salut tout le monde , bon samedi à tous !

10/04/2020 à 14h28 : Swan : Bah oui .. -_-' mon troisième coup, après je laisse tombé ^^

09/04/2020 à 21h24 : m-ickael : Encore ce permis ?

09/04/2020 à 16h28 : Swan : Coucou tout le monde, bon bah le code de la route avance bien ! Étant en confinement, donc pour le réviser, j'ai du temps ;)

06/04/2020 à 19h26 : m-ickael : AH AH, non nouvelle mode j'ai l'impression avec le côté ombre :)

06/04/2020 à 15h44 : Swan : Coucou Oui j'ai vu, tu as vu du rond pendant neuf mois, alors tu t'es dis pourquoi pas ?? ;)

05/04/2020 à 21h59 : m-ickael : MDR, merci .. Tu verras sur le forum une nouvelle version de mon site (graphique)

05/04/2020 à 17h57 : Swan : Hoo félicitation Mickael :) Bon bah le confinement c'est chiant ! je suis fatiguée à ne rien faire. Et aujourd'hui c'est dimanche, je fais rien aussi.. :rire

05/04/2020 à 17h55 : Swan : Hey salouté touti ^^ Répondu Myster :)

04/04/2020 à 16h22 : Myster : Bonjour tout le monde, @Swan je t'ai envoyé un MP :)

29/03/2020 à 12h20 : m-ickael : je reprends volontairement le 06 avril pour travailler, et je reprendrai des jours après le confinement. Le petit fait presque ses nuits, et il est très calme.

29/03/2020 à 12h19 : m-ickael : Be moi congé paternité du coup, avec 3 semaines d'avance .. Il devait naitre le 11.04.20 et il est né le 18.03.20 :O

28/03/2020 à 13h03 : Swan : Bonjour à tous, alors le confinement , chez vous.. cela se passe comment ?

27/03/2020 à 11h33 : m-ickael : Salut à tous

25/03/2020 à 06h37 : hight_tower : Bonjour et bonne journée, highty

20/03/2020 à 12h12 : Swan : Bonjour tout le monde ^^

09/03/2020 à 20h08 : m-ickael : Certes, moins communautaire .. Mais bon, c'est calme.

09/03/2020 à 20h08 : m-ickael : Moi j'aime les deux, mais je préfère celui ci .. Plus facile de s'y retrouver :)

Vous n'êtes pas autorisé à ajouter un message !

Framework

Développement sur PHPBoost
Bienvenue sur l'espace de la documentation de PHPBoost destiné au développement de modules basés sur PHPBoost.


Développer un module

Apprenez à créer un module en suivant ce guide qui vous explique pas à pas les manipulation à exécuter.


Page en cours de refonte. La suite de cette page n'a pas encore été traitée.


Vous trouverez ici la documentation nécessaire pour pouvoir développer un module en se basant sur le noyau PHPBoost.

Créer un module additionnel



L'article Créer un module additionnel détaille pas à pas la création d'un module additionnel. Il fait référence aux framework PHPBoost, détaillé dans la partie suivante de cette article. N'hésitez pas à vous y référer régulièrement pour approfondir votre connaissance du framework PHPBoost.

Framework PHPBoost



Classes



Le framework PHPBoost est composée de classes permettant de faire différentes actions assez simplement pour ne pas avoir à réinventer la roue en développant. Voici la liste de celles qui peuvent être utiles lors du développement d'un module, elles sont classées par importance.

ClasseDescription

Templates
Cette classe permet de séparer le code HTML & CSS (mise en page de la page) du code PHP. Cette technique permet de plus de proposer aux utilisateurs d'utiliser différents thèmes graphiques sur le même site avec une personnalisation la plus complète. L'utilisation de cette technique (séparation des deux types de code) est très fortement recommandée pour le développement de modules (voire indispensable).

Member
Cette classe permet de gérer les membres, récupérer des informations sur eux. Cette classe permet de gérer de façon très pointue les autorisations d'accès par niveau et en supportant notamment les groupes. Un utilisateur peut être dans plusieurs groupes, elle est capable de combiner les droits de chacun des groupes dans lesquels le membre est inscrit. C'est une classe incontournable et très simple à manier.

Sql
La plupart des modules ont besoin d'une base de données. Comme PHPBoost est compatible avec plusieurs SGBD il faut passer par l'intermédiaire d'un environnement générique qui gère la compatibilité avec les différents systèmes. C'est le rôle de la classe SQL.

Cache
Dans le noyau PHPBoost ainsi que dans de nombreux modules des variables de configuration sont utiles. Pour ne pas les stocker dans la base de données et aller les chercher à chaque affichage de page (rappelons qu'une requête dans la base de données coûte cher en performance), il est préférable de mettre en cache ces informations. En gros cela consiste à créer des fichiers qui sont actualisés à chaque modification de la configuration et qui sont chargé à chaque affichage de page.

Pagination
Cette classe est fréquemment utilisée. Elle permet de générer un code HTML contenant les liens vers les différentes pages. Plusieurs options sont disponibles pour adapter la pagination à chaque besoin.

Errors
Gestion des erreurs. Permet de rediriger vers des erreurs générales gérées par le noyau (problème d'autorisation, d'accès...) ou des erreurs propres à chaque module. Différents types de messages d'erreurs sont gérés (erreur, attention, remarque, succès) et l'archivage des erreurs est possible.

Group
Cette classe permet de gérer les groupes. Elle permet de créer des formulaires, ajouter des membres au groupes, etc..

Categories_management
Cette classe permet de gérer des catégories infinies sans avoir à se préoccuper de leur administration. Elle gère les déplacements, l'ajout, la suppression et la modification de catégories. Elle permet aussi de générer différents types d'affichage de formulaires.

Mail
Permet d'envoyer des messages électroniques. Elle permet aussi de vérifier la validité d'une adresse mail.

Rss
Permet de gérer des flux RSS. Elle est capable de générer un flux RSS mais aussi de lire un flux RSS.

Upload
Permet de gérer l'upload de fichiers. Elle est capable de renommer et uploader un fichier, à l'endroit voulu.

Backup
Grâce à cette classe il est possible de créer des sauvegardes et restaurations de base de données. Elle permet aussi de travailler sur la base de données (optimiser les tables et réparer l'intégrité des données).

Bench
Cette classe permet de chronométrer un temps durant l'exécution d'une page. Elle est utilisée pour connaître le temps de génération de la page, mais peut être utile pour d'autres tâches.

Modules ModuleInterface
Ces deux classes permettent aux modules de communiquer entre eux de cette façon, le noyau ou un autre module peut appeler des fonctionnalités d'autres modules sans pour autant casser l'indépendance de chaque module.

Ce système permet donc de garder l'indépendance de chaque module, mais leur permet de communiquer pour ne pas être bloqué par cette indépendance.

Date
La classe Date permet de manipuler des données temporelles (dates, timestamp, dates avec heure précise...) dans différents référentiels horaire.


Documentation supplémentaire



OutilsDescription

Poptimizer
POptimizer (pour PHP Optimizer) est un optimiseur de code source en PHP distribué sous licence GNU/GPL. Cet outil a été développé par l'équipe de développement du noyau de PHPBoost afin d'améliorer ses performances.


Fonctions



Le framework PHPBoost contient aussi des fonctions dont l'utilité est très variée.

Divers



Généralités, avertissement
Charger l'environnement du portail
Langues
Sécurisation des variables entrantes
Environnement base de données
Bloquer une page !
Creer un module additionnel!
Développement de gestion de langue!
Environnement d'une base de données!
Gestion de configuration de phpboost
Guide de style
Internationalisation du code
Introduction au développement
Moteur de templates de phpboost
Support mobile


Articles contenus par cette catégorie :  

Bloquer une page !
Charger l'environnement de PHPBoost
Classe Cache
Classe Cache - exemple d'utilisation
Classe Cache : génération du fichier cache d'un module
Classe Categories_management
Classe Date
Classe Group
Classe Groups : stockage des permissions dans la base de données
Classe Mail
Classe Member
Classe Sql
Classe Templates
Classes Modules - ModuleInterface
Créer un module additionnel
Développement : gestion des fichiers langue
Environnement base de données
Gestion de configuration de PHPBoost
gestion des fichiers langue
Guide de style
Internationalisation du code
Introduction au développement sur PHPBoost
Méthode Cache::Generate_all_files()
Méthode Cache::Generate_module_file()
Méthode Cache::Load_file()
Méthode Categories_management :: Add_category
Méthode Categories_management :: Build_categories_administration_interface
Méthode Categories_management :: Build_children_id_list
Méthode Categories_management :: Build_parent_id_list
Méthode Categories_management :: Build_select_form
Méthode Categories_management :: Categories_management
Méthode Categories_management :: Change_category_visibility
Méthode categories_management :: Check_displaying_configuration
Méthode Categories_management :: Check_error
Méthode Categories_management :: Delete_category
Méthode Categories_management :: Move_category
Méthode Categories_management :: Set_displaying_configuration
Méthode Date::Date
Méthode Groups::return_array_auth()
Méthode Member::Check_auth()
Méthode Member::Check_level()
Méthode ModuleInterface::functionnality
Méthode ModuleInterface::GetErrors
Méthode ModuleInterface::GetInfo
Méthode ModuleInterface::Hasfunctionnality
Méthode ModuleInterface::ModuleInterface
Méthode Modules::Functionnality
Méthode Modules::GetAvailablesModules
Méthode Modules::GetModule
Méthode Modules::Modules
Méthode SQL::Close()
Méthode SQL::Count_table()
Méthode Sql::Query()
Méthode Sql::Query_array()
Méthode Sql::Query_inject()
Méthode Sql::Query_while()
Méthode SQL::Sql_close()
Méthode Sql::Sql_concat()
Méthode Sql::Sql_connect()
Méthode Sql::Sql_fetch_assoc()
Méthode Sql::Sql_insert_id()
Méthode Sql::Sql_limit()
Méthode Sql::Sql_num_rows()
Méthode Sql::Sql_select_db()
Méthode Templates::Assign_block_vars()
Méthode Templates::Assign_vars()
Méthode Templates::Module_data_path()
Méthode Templates::Pparse()
Méthode Templates::Set_filenames()
Moteur de templates de PHPBoost
POptimizer
Rendre son module compatible avec l'interface de communication
Sécurisation des variables entrantes
Support mobile
Utilisation de POptimizer
Cette page a été vue 5151 fois