Quel valeur a $_GET['p'] ? Suivant ce que tu passes comme valeur tu peux ne pas avoir deux éléments au tableau lorsque tu fais $page = explode('.', $page); et donc l'élément 1 sera indéfini lorsque tu fais $page[1].
Si tu exécutes :
tu auras
Bonjour j'ai un soucis sur mon fichier ont m'indique comme erreur ,
Ma clé est "p" .
Je suis le tuto sur le mvc je comprendai jusque la mais la je suis complétement perdu .....
https://grafikart.fr/tutoriels/mvc-model-view-controller-574#autoplay
Meme en prenant le dossier source j'ai la meme erreur ......
Je ne comprend vraiment pas du tout Avez vous une solution ?
Voila le git hub du projet : https://github.com/xavgdt66/bloginexerror
Voila ma page app/public/index.php
Voila ou j'ai l"erreur
Quel valeur a $_GET['p'] ? Suivant ce que tu passes comme valeur tu peux ne pas avoir deux éléments au tableau lorsque tu fais $page = explode('.', $page); et donc l'élément 1 sera indéfini lorsque tu fais $page[1].
Si tu exécutes :
tu auras
La valeur de $_GET['p'] est 'p' non ? à moins que j'ai trés mal compris ......
Hello :)
Nope, p c'est la clé de ta requete, quand tu fais $_GET['p'] ca renvoie la valeur de la clé "p"
En gros si ton url c'est http://tonsite.com?p=toto alors la valeur de $_GET['p'] c'est toto
Merci à vous
Donc voila ma valeur : admin.categories.index
Tu peux ajouter print_r($page); à la ligne 22 et montrer le code que tu as à la ligne où tu as l'erreur ?
J'ai ça qui s'affiche Array ( [0] => admin [1] => posts [2] => index ) Acces interdit
C'est la derniere partie de code que j'ai mis ou il y a l'erreur
Hello
Il y a un truc qui ne va pas... si ta valeur === "admin.categories.index ", le resultat de l'explode devrait être Array ( [0] => admin [1] => categories [2] => index )
Est-ce que tu peux stp faire appliquer la modif ci dessous et nous donner le resultat stp ?
en précisant la valeur du paramètre "p", merci.
Autre chose bizarre : tu dis que l'erreur est à la ligne $action = $page[1];
alors que ta page étant admin.categories.index tu devrais passer dans le if
Le mieux serait de mettre juste ça dans ton script (note que j'ai enlevé le require en début de page) :
et de te rendre sur la page /?p=admin.categories.index
soundBoy maintennat j'ai ça afficher admin.posts.indexArray ( [0] => admin [1] => posts [2] => index ) Array ( [0] => admin [1] => posts [2] => index ) Acces interdit c'est par ce que je ne suis pas connecter avec la valeur admin.posts.index .
Mais mtn j'ai un autre soucis c'est sur ma page login.php j'ia cette erreur :
Warning: Undefined array key 1 in C:\xampp\htdocs\gra\public\index.php on line 30
Mtn j'ai une erreur dans ma page p=login
Warning: Undefined array key 1 in C:\xampp\htdocs\gra\public\index.php on line 24
Voila le résultat de mon navigateur JoolsMcFly pour la page "" http://localhost/gra/public/index.php?p=login ""
https://ibb.co/HrjJZdz
OK mais t'as pas fait ce que je t'ai demandé pour mieux débuguer car mon code a 17 lignes et t'as l'erreur à la ligne 23.
En tout cas en allant sur http://localhost/gra/public/index.php?p=login alors $_GET['p'] sera égal à login et c'est normal que t'aies une erreur quand le code fait $action = $page[1]; car à ce moment ton tableau n'a qu'un élément : login en position 0,
Remplace tout ton script par :
et ca devrait fonctionner car j'ai ajouté ?? 'index' qui va être la valeur par défaut au cas où il n'y ait pas $page[1] (ou $page[2] dans le if).
Rends toi sur http://localhost/gra/public/index.php?p=login et tu devrais le controlleur de Login et l'action index.
C'est bon ça me fait ça https://ibb.co/Rgm2D6K mais mon formulaire de login n'apparait pas
Oui, bien sûr, c'était juste pour débuguer avec le minimum de code. Maintenant tu peux remettre
puis
à la fin et tu devrais voir ton formulaire.
Je l'ai fait et mon formualire n'apparrait pas
Est-ce que tu peux metre tout le script ici stp ?
T'as bien une méthode login dans LoginController ?
Si oui est-ce que tu mettre le code ici stp ?
Le formulaire n'apparait pas mais est-ce que t'as une erreur ?
Ajoute
en tout début de script pour être sûr que les erreurs s'affichent.
Cela n'affiche rien ...
Oui j'en ai bien une
Regarde mon github https://github.com/xavgdt66/login Peut etre que tu verra quelque chose que je ne verraie pas
Dsl, je n'ai pas trop le temps de regarder plus en détails aujourd'hui mais au passage, loginController devrait être LoginController.
Est-ce que tu as installé xdebug ? Ça permet de faire du pas à pas et c'est l'arme fatale pour débuguer.
Tu as une page blanche ? Pas d'erreur même avec le code que j'ai mis prédemment ?
C'est bon j'ai réussi merci à toi
Cool, à la prochaine :)