{"id":21466332,"url":"https://github.com/themaxium69/phpmyframeworkobject","last_synced_at":"2025-07-12T21:34:15.378Z","repository":{"id":134379188,"uuid":"383381223","full_name":"TheMaxium69/PhpMyFrameWorkObject","owner":"TheMaxium69","description":"FrameWork en Php Object ","archived":false,"fork":false,"pushed_at":"2021-07-14T21:04:46.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-17T05:46:49.497Z","etag":null,"topics":["framework","php","php-object"],"latest_commit_sha":null,"homepage":"https://github.com/TheMaxium69/PhpMyFrameWorkObject/wiki","language":"PHP","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TheMaxium69.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-07-06T07:36:21.000Z","updated_at":"2021-07-23T07:17:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"d442b33b-03ca-4f44-92f0-87c1e733591f","html_url":"https://github.com/TheMaxium69/PhpMyFrameWorkObject","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/TheMaxium69/PhpMyFrameWorkObject","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheMaxium69%2FPhpMyFrameWorkObject","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheMaxium69%2FPhpMyFrameWorkObject/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheMaxium69%2FPhpMyFrameWorkObject/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheMaxium69%2FPhpMyFrameWorkObject/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TheMaxium69","download_url":"https://codeload.github.com/TheMaxium69/PhpMyFrameWorkObject/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheMaxium69%2FPhpMyFrameWorkObject/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265059439,"owners_count":23705218,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["framework","php","php-object"],"created_at":"2024-11-23T08:13:52.713Z","updated_at":"2025-07-12T21:34:15.369Z","avatar_url":"https://github.com/TheMaxium69.png","language":"PHP","readme":"# PhpMyFrameWorkObject\nFrameWork en Php Object | Pour ma formation HumanBooster\n\n\n# Documentation\n\u003cmain\u003e\n    \u003ch4\u003eSommaire\u003c/h4\u003e\n    \u003cul\u003e\n        \u003cli\u003e\n            \u003cp\u003eBase\u003c/a\u003e\n        \u003c/li\u003e\n        \u003cli\u003e\n            \u003cp\u003eControlleur\u003c/p\u003e\n        \u003c/li\u003e\n        \u003cli\u003e\n            \u003cp\u003eTemplate\u003c/p\u003e\n        \u003c/li\u003e\n        \u003cli\u003e\n            \u003cp\u003eModel\u003c/p\u003e\n        \u003c/li\u003e\n        \u003cli\u003e\n            \u003cp\u003eAutre\u003c/p\u003e\n        \u003c/li\u003e\n    \u003c/ul\u003e\n    \u003csection id=\"Base\"\u003e\n        \u003ch4\u003eLes Bases\u003c/h4\u003e\n        \u003cp\u003eLe frame work est fait en 3 parti \u003cu\u003eLes Controlleurs\u003c/u\u003e, \u003cu\u003eLes Models\u003c/u\u003e et \u003cu\u003eLes Template\u003c/u\u003e\u003c/p\u003e\n    \u003c/section\u003e\n    \u003csection id=\"Controlleur\"\u003e\n        \u003ch4\u003eLes Controlleurs\u003c/h4\u003e\n        \u003cp\u003e\n            Le Controlleurs est une class ou on instensi tout, il faut créer une méthode (exemple : \u003cmark\u003eindex\u003c/mark\u003e) qui sera appeler car le framework est fait pour appeler un controleur et une méthode de ce controleur\n            \u003cbr\u003e Exemple : \u003cmark\u003e index.php?controller=home\u0026task=index \u003c/mark\u003e\n            \u003cbr\u003e avec cette exemple on appeler le controller \u003cmark\u003eHome\u003c/mark\u003e et la méthode \u003cmark\u003eindex\u003c/mark\u003e\n            \u003cbr\u003e Voici comment le code est réaliser\n        \u003c/p\u003e\n        \u003cp\u003e\u003cimg src=\"https://cdn.discordapp.com/attachments/446049284694081546/857605696417300480/unknown.png\" alt=\"controlleur1\" width=\"800px\" class=\"d-inline-block align-text-top\"\u003e\u003c/p\u003e\n        \u003cp\u003e\n            on peut voir dans ce screen qu'on ce situe dans un Controlleur \u003cmark\u003eHome\u003c/mark\u003e et qu'il ya une méthode \u003cmark\u003eindex\u003c/mark\u003e qui si on décortique le code, qui instantie des variable \u003cmark\u003etitreDePage\u003c/mark\u003e, \u003cmark\u003emessage\u003c/mark\u003e et \u003cmark\u003emessageChange\u003c/mark\u003e\n            \u003cbr\u003e avec la conditions d'après on verfi si il y a bien du contenue dans cette variable \u003cmark\u003epost\u003c/mark\u003e (d'un formulaire qu'on vera dans la parti \u003cu\u003eTemplate\u003c/u\u003e), si c'est bien le cas on met le contenue du \u003cmark\u003epost\u003c/mark\u003e dans la variable \u003cmark\u003emessageChange\u003c/mark\u003e\n            \u003cbr\u003e puis pour terminer on termine noter méthode avec cette ligne :\n            \u003cbr\u003e \u003cmark\u003e\\Rendering::render(\"home/home\", compact('message', 'messageChange', 'titreDeLaPage'));\u003c/mark\u003e\n            \u003cbr\u003ela parti \u003cmark\u003e\"home/home\"\u003c/mark\u003e nous donne ou ce situe le \u003cu\u003eTemplate\u003c/u\u003e (Attention : bien respect la manière de créer les fichers \u003cu\u003eTemplate\u003c/u\u003e)\n            \u003cbr\u003e et pour terminer dans \u003cmark\u003ecompact()\u003c/mark\u003e on vas mettre les variable qu'on veut donner au \u003cu\u003eTemplate\u003c/u\u003e, ou dit plus clairement on va donner les variable qu'on veut récupere dans l'html\n            \u003cbr\u003e exemple : \u003cmark\u003ecompact('message', 'messageChange', 'titreDeLaPage')\u003c/mark\u003e\n            \u003cbr\u003e avec cette exemple on va transmettre les variable \u003cmark\u003etitreDePage\u003c/mark\u003e, \u003cmark\u003emessage\u003c/mark\u003e et \u003cmark\u003emessageChange\u003c/mark\u003e, et en y passant la variable \u003cmark\u003etitreDePage\u003c/mark\u003e, vas automatique ce mettre dans le titre de la page\n            \u003cbr\u003e dernière petit chose on oublie pas de respecter les syntaxe et de bien mettre les ficher au bonne en droit avec la bonne majuscule\n        \u003c/p\u003e\n        \u003cp\u003e\u003cimg src=\"https://media.discordapp.net/attachments/446049284694081546/857610659368665098/unknown.png\" alt=\"controlleur2\" width=\"250px\" class=\"d-inline-block align-text-top\"\u003e\u003c/p\u003e\n    \u003c/section\u003e\n    \u003csection id=\"Template\"\u003e\n        \u003ch4\u003eLes Template\u003c/h4\u003e\n        \u003cp\u003ele Template sera plus simple que \u003cu\u003ele controlleur\u003c/u\u003e on va reprendre comme pour \u003cu\u003ele controlleur\u003c/u\u003e notre exemple du haut\u003c/p\u003e\n        \u003cp\u003e\u003cimg src=\"https://cdn.discordapp.com/attachments/446049284694081546/857612139136942080/unknown.png\" alt=\"template1\" width=\"800px\" class=\"d-inline-block align-text-top\"\u003e\u003c/p\u003e\n        \u003cp\u003e\n            grace a la méthode \u003cmark\u003ecompact()\u003c/mark\u003e que nous avons mis dans notre \u003cu\u003econtrolleur\u003c/u\u003e on peut récupérer nos variable \u003cmark\u003emessage\u003c/mark\u003e et \u003cmark\u003emessageChange\u003c/mark\u003e et grace a un simple \u003cmark\u003eecho\u003c/mark\u003e on a pus les afficher\n            \u003cbr\u003een desous nous avons un simple formulaire en \u003cmark\u003epost\u003c/mark\u003e qui redirige vers \u003cmark\u003eindex.php?controller=home\u0026task=index\u003c/mark\u003e ce qui nous permet de refaire appel a la méthode \u003cmark\u003eindex\u003c/mark\u003e du \u003cu\u003econtrolleur\u003c/u\u003e \u003cmark\u003eHome\u003c/mark\u003e ce qui nous a permis d'envoyé dans notre \u003cu\u003econtrolleur\u003c/u\u003e la variable \u003cmark\u003epost\u003c/mark\u003e et dans l'exemple ça sera \u003cmark\u003e$_POST['messageChange']\u003c/mark\u003e\n            \u003cbr\u003eencore une fois on oublie pas de respecter les syntaxe et de bien mettre les ficher au bonne en droit avec la bonne terminaison de ficher \u003cmark\u003e.html.php\u003c/mark\u003e\u003cbr\u003e\n        \u003c/p\u003e\n        \u003cp\u003e\u003cimg src=\"https://cdn.discordapp.com/attachments/446049284694081546/857608951750066176/unknown.png\" alt=\"template2\" width=\"300px\" class=\"d-inline-block align-text-top\"\u003e\u003c/p\u003e\n    \u003c/section\u003e\n    \u003csection id=\"Model\"\u003e\n        \u003ch4\u003eLes Models\u003c/h4\u003e\n        \u003cp\u003e\n            Alors les models surment la parti la plus compliqué a comprendre d'ailleur pour ça on va changez d'exemple avec un Garage\n            \u003cbr\u003epour commencer il faut changez la class \u003cu\u003econtrolleur\u003c/u\u003e qu'on a applez \u003cmark\u003eGarage\u003c/mark\u003e\n        \u003c/p\u003e\n        \u003cp\u003e\u003cimg src=\"https://media.discordapp.net/attachments/446049284694081546/857624091103330334/unknown.png\" alt=\"model1\" width=\"500px\" class=\"d-inline-block align-text-top\"\u003e\u003c/p\u003e\n        \u003cp\u003e\n            grace a l'ajout de \u003cmark\u003eextends Controller\u003c/mark\u003e ça nous permet de faire comprendre au framwork qu'on a vas vouloir un model\n            \u003cbr\u003eet juste en dessous il faut mettre le nom de notre model \u003cmark\u003eprotected $modelName = \\Model\\Garage::class;\u003c/mark\u003e grace a cette ligne on donne la class model a notre \u003cu\u003econtrolleur\u003c/u\u003e\n            \u003cbr\u003eet evidement on respect le nom avec la majuscule et l'endroit du ficher (tout les model dans \u003cmark\u003e../core/Model/\u003c/mark\u003e)\n        \u003c/p\u003e\n        \u003cp\u003e\u003cimg src=\"https://cdn.discordapp.com/attachments/446049284694081546/857626638661845052/unknown.png\" alt=\"model1\" width=\"250px\" class=\"d-inline-block align-text-top\"\u003e\u003c/p\u003e\n        \u003cp\u003e\n            pas terminer\n        \u003c/p\u003e\n    \u003c/section\u003e\n    \u003csection id=\"Other\"\u003e\n        \u003ch4\u003eAutre\u003c/h4\u003e\n        \u003cp\u003epour terminez on oublie pas de bien connecter sa base de donné dans le ficher \u003cmark\u003e../core/Database.php\u003c/mark\u003e et on remplie ces information\u003c/p\u003e\n        \u003cp\u003e\u003cimg src=\"https://cdn.discordapp.com/attachments/446049284694081546/857615252744699904/unknown.png\" alt=\"other1\" width=\"800px\" class=\"d-inline-block align-text-top\"\u003e\u003c/p\u003e\n        \u003cp\u003e\n            \u003cmark\u003elocalhost\u003c/mark\u003e : Le lien de votre base de donnée\n            \u003cbr\u003e\u003cmark\u003eExempleDB\u003c/mark\u003e : Le nom de votre base de donnée\n            \u003cbr\u003e\u003cmark\u003eExempleUsername\u003c/mark\u003e : Le username de votre base de donnée\n            \u003cbr\u003e\u003cmark\u003eExemplePassword\u003c/mark\u003e : Le password de votre base de donnée\n        \u003c/p\u003e\n    \u003c/section\u003e\n\u003c/main\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthemaxium69%2Fphpmyframeworkobject","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthemaxium69%2Fphpmyframeworkobject","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthemaxium69%2Fphpmyframeworkobject/lists"}