Mvc methode get

Fermé
jordxn Messages postés 356 Date d'inscription jeudi 15 avril 2010 Statut Membre Dernière intervention 26 avril 2015 - 13 févr. 2014 à 19:33
jordxn Messages postés 356 Date d'inscription jeudi 15 avril 2010 Statut Membre Dernière intervention 26 avril 2015 - 14 févr. 2014 à 00:01
Bonjour,
j'ai commencé le modele mvc, mais je bloque au niveau de la compréhension de mon code...

<?php 
if(isset($_GET['module']))
$module = $_GET['module'];
else
$module="main";$action='index';

if(isset($_GET['action']))
$action = $_GET['action'];
else
$action="index";

require('controllers/tutoriels.php');
require('config/config.php');

$tutoriels=new tutoriels();
if(method_exists($tutoriels,$action)){
call_user_func(array($tutoriels,$action),($module));
//$tutoriels->$action();
}else{
echo "erreur 404";
}
?>

A quoi correspond une action ? un module ?

Merci

1 réponse

lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
13 févr. 2014 à 21:13
bonsoir, je suppose que tu débute, si c'est le cas tu est au bon endroit pour progresser ;-)

déja petite remarque, je pense que le code tu l'a copié/collé, c'est pas un reproche, mais tu n'a pas peut etre pris la syntaxe la plus claire pour commencer.
je m'explique

tu a mis :

if(isset($_GET['module']))
$module = $_GET['module'];
else
$module="main";$action='index';

perso je t'aurais mis le code comme ça si j'avais eu a t'expliquer

if(isset($_GET['module']))
{
$module = $_GET['module'];
}
else
{
$module="main";
$action='index';
}
la différence tu va me dire..?
elle réside dans les accolades { en gras
question de lisibilité

la tu va recuperer la valeur d'une variable passé parla méthode GET ( envoi des paramètres dans l'url https://www.notre-planete.info/PHP/cours_9.php )

if isset c'est comme une question, est ce que la variable appelé 'module' existe, tu aurais pu l'appeler tartempion ca aurait été pareil, à condition dans la suite de ton code de garder le nom tartempion.

donc si elle existe la variable que tu a appelé module prendra la valeur de $_GET['module'] et si elle existe pas tu lui impose une valeur, ici c'est main

concretement dans ton url cela se traduit comme ca
http://monlien.php?module='page_2' ---> ici ta variable module vaudra page_2

ou bien

http://monlien.php?module='' --> ici ta variable module vaudra main et $action => index

le raisonnement est le meme pour $action

autrement dis avec ce code si $_GET['module'] n'est pas vide, on va recuperer $_GET['action'] et on verifie qu'il existe, si oui on redirige vers je pense une page de tutoriel, sinon on affiche une page d'erreur (echo "erreur 404";)

et si module n'existe pas on redirige vers l'accueil de ton site

voila en éspèrant t'avoir un peu éclairé ;-)
n'oublie pas le code, ce n'est que persévérance et obstination..
0
jordxn Messages postés 356 Date d'inscription jeudi 15 avril 2010 Statut Membre Dernière intervention 26 avril 2015 1
14 févr. 2014 à 00:01
Merci c'est très sympa de votre part
0