IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

charger une vue MVC


Sujet :

Langage PHP

  1. #1
    Membre habitué

    Profil pro
    Pompier
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Pompier

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Points : 171
    Points
    171
    Par défaut charger une vue MVC
    Je me pose une question par rapport à la pattern MVC.
    Pour bien poser la situation, je n'ai aucune formation scolaire en informatique, je suis un self made main.

    J'ai développé un site, mais pour le traitement, j'ai tout mis dans le même formulaire, php et html pour toutes les fonction (bouuuuuuuuuuuu) et j'aimerai bien faire quelquechose de propre.

    Avant de recoder je veux savoir comment ça fonctionne précisément.
    Le principe de la patterne ,pas de souci
    la vue appel une fonction dans le contrôleur, qui appel des modèles et une vue charge les données (EN GROS).

    C'est cette dernière étape que je ne comprends pas.

    Tout d'abord, pour appeler la fonction, je passe par la méthode POST.
    je poste depuis ma vue $_POST['function']=verif_mdp (insert,modif,supp)ET dans le contrôleur j'ai quelqueche chose du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if ($_POST['function']==verif_mdp] {.....}
    if ($_POST['function']==insert] {.....}
    if ($_POST['function']==modif] {.....}
    if ($_POST['function']==supp {.....}
    Mon formulaire ce compose de 3 parties:
    -données sur l'utilisateur (nom,prénom,liens si administrateur)
    -données saisies pour une date
    -listes des dates saisies.

    Nom : vue.jpg
Affichages : 705
Taille : 74,2 Ko

    A partir de cette "VUE" , les fonctions (ouverture/défaut, inserérer,modifier,supprimer) vont au final retourner la vue avec les valeurs.

    Si j'ai bien compris, le code de ma vue est dans un formulaire distinct du contrôleur.

    Comment est-ce que je fais pour récupérer dans ma vue, les valeurs des variables du contrôleur (session?).

    Imaginons la personne se logue et la fonction(ouverture_jour) est appelée.
    Je grossi le code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    if ($_POST['function']==ouverture) {
     
    //récupération des données de l'utilisateur
    include("donnee_utilisateur.php");
    //donne $prenom,$nom,......
     
    //récupération des saisie pour date=date()
    include("donnee_jour.php");
    //donne $date,$T1,......$T10
     
    //récupération liste date saisies
    include("liste_date.php");
    //donne WHILE($date)
     
    //quel est le code pour dire "ouvre la vue XXX.php et insère les données"???
    }

  2. #2
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Salut,

    Citation Envoyé par hugodu28 Voir le message
    Comment est-ce que je fais pour récupérer dans ma vue, les valeurs des variables du contrôleur (session?).
    La vue ne peut pas accéder au contrôleur, chaque vue doit avoir son paramétrage et c'est le contrôleur qui passe les paramètres à la vue.
    La vue est en bout de chaine. Elle ne sait quasiment rien faire à part produire du HTML sécurisé. Tout le reste doit être fait en amont.

  3. #3
    Membre habitué

    Profil pro
    Pompier
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Pompier

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Points : 171
    Points
    171
    Par défaut
    concrétement, on fait comment?

    imaginons que le contrôleur récupère $nom et $prénom, comment il envoit ces valeurs à la vue?

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 692
    Points : 20 241
    Points
    20 241
    Par défaut
    Le principe de la patterne ,pas de souci
    C'est un pattern

    la vue appel une fonction dans le contrôleur, qui appel des modèles et une vue charge les données (EN GROS).
    Le controler appel un model qui lui retourne des données , le controler appel la vue qui peux utiliser ces données.

    En principe la vue n’interagit pas avec le controler, elle ne fait que utiliser les données qu'on lui met à disposition.

    Donc dans ton controller tu as par exemple un tableau $view qui contient toutes les variables à envoyer à la vue :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $view = array();
    $view['nom'] = 'Dupond';
    $view['age'] = 45;
    puis au moment d'afficher la vue tu fais quelque chose comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    extract($view); // voir la doc php pour extract
    include_once('dossier/ma_vue.php');
    Et dans ta vue tu pourras alors ecrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <h1>Bonjour <?php echo $nom ?> vous avez <?php echo $age ?></h1>

  5. #5
    Membre habitué

    Profil pro
    Pompier
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Pompier

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Points : 171
    Points
    171
    Par défaut
    ça a l'air simple, vue comme ça.
    Bon cette aprèm j'essaye on verra bien si les fils se sont touché ou pas.


    le code serait donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    if ($_POST['function']==ouverture) {
     
    //récupération des données de l'utilisateur
    include("donnee_utilisateur.php");
    //donne $prenom,$nom,......
     
    //récupération des saisie pour date=date()
    include("donnee_jour.php");
    //donne $date,$T1,......$T10
     
    //récupération liste date saisies
    include("liste_date.php");
    //donne WHILE($date)
     
    extract($view)
    include_once('ma_vue.php');
    }

  6. #6
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    je suis un self made main
    Tu veux dire, comme Luke Skywalker ?





    Si ça te branche, mon dernier composant permet de faire du MVC de la façon la plus simple que j'ai pu imaginer. Tu peux aller réccupérer la béta ici https://github.com/bdelespierre/cobalt.

    La différence avec ce que tu peux voir sur les ressources en lignes, c'est qu'ici ce ne sont pas les vues qui son appellée mais des ressources identifiées par leurs URI (exemple mon.site.com/article/123), les vues sont en fin de chaine, elles affichent ce que leur renvoient les contrôleurs.

    Voici un exemple concrêt de ce que tu peux faire avec ce composant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <?php
     
    // obligatoire
    spl_autoload_register(function ($classname) {
        return include str_replace('_', '/', $classname) . '.php';
    });
     
    // obligatoire
    require_once "Cobalt/Cobalt.php";
     
    Cobalt::bind('/', function ($view) {
      return $view('partials/accueil.php');
    });
     
    Cobalt::bind('/articles', function ($view) {
      $pdo = new PDO('...');
      $stmt = $pdo->query('...');
      return $view('partials/articles.php', array('articles' => $stmt->fetchAll(PDO::FETCH_OBJ)));
    });
     
    Cobalt::handler('get:url');
    J'ai grossi volontairement le trait pour simplifier. Dans les vues du répertoire partials/ tu peux directement utiliser les variables qui sont dans le tableau passé en paramètre à l'objet $view; par exempel dans partials/articles.php tu dispose de $articles et c'est un tableau à 2 dimentions issu de la BDD.

    En gros, Cobalt fournit le routeur et les parseurs d'URl, tu décris tes contrôleurs avec des fonctions anonymes et tu décris tes vues dans de simples fichiers PHP.

  7. #7
    Membre habitué

    Profil pro
    Pompier
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Pompier

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Points : 171
    Points
    171
    Par défaut
    bon j'ai fais ce bout de code dans le contrôleur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <?php
    header('Content-type: text/html; charset=UTF-8');
    if (!session_id()) session_start();
    //importation parametres de connection
    include("config.php");
    //contrôle du token
    include("check.php");
     
    if (isset($_SESSION["fonction"])=="ouverture"){
    	//récupération des données utilisateur
    	include("donnees_RH.php");
     
    	//affichage de la vue
    	extract($view); 
        include_once('view/ouverture.php');
    }
    ?>
    C'est bizarre, message d'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Cannot redeclare hashPassword() (previously declared in F:\EasyPHP-5.3.9\www\dispo_spv_MVC\config.php:16) in F:\EasyPHP-5.3.9\www\dispo_spv_MVC\config.php on line 18
    quand je retire le check ça fonctionne. ?????
    La ligne 18 définit les paramètres de hash.

    Sinon, quand ça fonction, dans l'url, je n'ai pas ..../view/ouverture.php mais
    ..../controle.php
    Qui peut m'expliquer???

  8. #8
    Membre habitué

    Profil pro
    Pompier
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Pompier

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Points : 171
    Points
    171
    Par défaut
    bon depuis la dernière fois j'ai lu plein de tutos sur le pattern MVC et je ne comprends toujours pas pourquoi, je visualise avec une adresse controle.php et non pas "nom_de_la_vue.php"

    Je vous mets les codes du contrôleur, modèles et view.

    controle.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    header('Content-type: text/html; charset=UTF-8');
    if (!session_id()) session_start();
    //importation parametres de connection
    include("config.php");
     
     
    if (isset($_SESSION["fonction"])=="ouverture"){
     
    	//récupération des données utilisateur
    	include("donnees_RH.php");
     
    	//affichage de la vue
    	extract($view); 
        include_once("view/ouverture.php");
    }
    donnees_RH.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    header('Content-type: text/html; charset=UTF-8');
     
    if (!session_id()) session_start();
     
    //données utilisateur
    $username= $_SESSION["username"];
    //echo $username;
    		if ((ctype_digit($username) and (strlen($username))==4)){
                $sql=("SELECT * FROM rh_users WHERE matricule=:username");
     			$sql_mdp= $mysql->prepare($sql);
    			$exec_sql_mdp=$sql_mdp->execute(array('username' => $username)) ;
    		    $result_sql_mdp=$sql_mdp->fetch ();
    			$nom=$result_sql_mdp['nom']; 
    			$prenom=$result_sql_mdp['prenom']; 
    			$centre1=$result_sql_mdp['centre1'];
    			$centre2=$result_sql_mdp['centre2'];
    			$admin1=$result_sql_mdp['admin1']; 
    			$admin2=$result_sql_mdp['admin2']; 
     
    			$view = array(
    				"nom" => $nom,
    				"prenom" =>$prenom ,
    				"centre1"=>$centre1 ,
    				"centre2" =>$centre2 ,
    				"admin1" =>$admin1 ,
    				"admin2" =>$admin2) ;
    				return $view;}
    		else{$_SESSION["cookie_test"]=0;
    			 header('Location: index.php');}
    ouverture.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>test ouverture</title>
    </head>
     
    <body>
    <h1>Bonjour <?php echo $nom ?> ;    ;prenom: <?php echo $prenom ?>;    ;centre1: <?php echo $centre1 ?>;    ;centre2: <?php echo $centre2 ?>;    ;admin1: <?php echo $admin1 ?>;    ;admin2: <?php echo $admin2 ?></h1>
    </body>
    </html>
    Pouvez-vous me dire si je respect le MVC?

  9. #9
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    bon depuis la dernière fois j'ai lu plein de tutos sur le pattern MVC et je ne comprends toujours pas pourquoi, je visualise avec une adresse controle.php et non pas "nom_de_la_vue.php"
    Parce que l'implémentation la plus réaliste du pattern MVC en PHP fait intervenir un routeur. Je t'explique.

    Dans toutes les implémentation MVC en PHP que j'ai vu, le call flow est le suivant:
    1. une ressource est demandée (requête HTTP get)
    2. on rentre dans l'application par le front-controller
    3. le front-controller détermine quel contrôleur doit prendre en charge la requête (c'est un routeur en général qui est chargé de déterminer le chemin que prends la route)
    4. le contrôleur effectue les contrôles et prépare les données
    5. puis il les passe à la vue et l'affiche
    6. le flux est envoyé au client
    7. fin de l'histoire

    C'est le mode de fonctionnement le plus réaliste en PHP pour le modèle MVC, vu qu'on ne peut pas modifier la vue indépendamment d'une action utilisateur (sauf éventuellement en ayant recours à du long-pooling et Ajax).

    Ce qui est important, c'est la notion de ressource, la vue n'est qu'un instantané de la ressource à un instant donné. Le contrôleur est responsable de la prise en charge de la requête HTTP et les métiers / modèles sont les données et les traitements nécessaires à la gestion de la ressource.

    Dans le monde du web, une ressource est souvent identifiée par une URI (ou URL si tu préfères), dans le patron MVC, la notion de page disparaît au profit de la notion de ressource, c'est pourquoi il est admis de ne pas invoquer directement la vue comme du voudrais le faire. La vue n'est invoquée qu'en fin de traitement.

  10. #10
    Membre habitué

    Profil pro
    Pompier
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Pompier

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Points : 171
    Points
    171
    Par défaut
    donc si j'ais bien compris,
    je suis pas trop mal.

    Le "Front controller", c'est ce qui chez moi correspond à "controle.php"?

    Après, ça doit être là où je suis pas au top car moi j'appel via include une page php où il y a le code du modèle et les vrais informaticiens appellent des fonctions (en fait je fais pas comme ça car je ne sais pas comment on fait).
    Est-ce qu'au final c'est pareil où il y a une vraie valeur ajoutée?

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2009
    Messages : 6
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    Si je ne me trompe pas tu demande dans ton dernier post la valeur ajoutée qu'apporte les fonctions comparé a l'inclusion direct d'un sctipt.

    1/ si je reutilisse un script 2 fois dans une page, et que si je suit ta methode j'inclu 2 fois le fichier, je vais donc acceder 2 fois au meme fichier. perte de performance, acces au disque multiplié par 2 (quand c'est que 2).

    2/creer un fichier par FONCTIONalité me semble inconcevable.
    Si dans un projet tu doit implémenté les fonction Create, Read, Update, Delete lié a ta base de données alors tu va creer 4 fichiers par table et si tu as 10 tables??????
    et si tu veut récuperer des donnees en faisant une recherche sur un autre champ, un autre fichier?
    Non ce n'est pas concevable.
    Dans un fichier Modele_ressource.php tu pourrai définir toute ces fonctions (1 modele par "table" si je peut me permettre se raccourci ), tu inclurai donc ton fichier Modele_ressource.php au début du controleur et tu ferai apel a une fonction défini dedans comme tu fais appel a la fonction include ou tout autre fonction que tu as l'habitude d'utiliser.
    Il y a encore bien des réponses a cette question.

    Je parlerai bien de programmation orienté objet qui me semble encore plus adapté que de faire apel a des fonctions mais je pense qu'il faut avant de se mettre a apprendre des pattern de conception qui sont "compliqué" il faut maitriser les bases et les fonctions sont une parti de la base, une bonne parti meme.

    Voila en esperant avoir pu t'éclairer

  12. #12
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Je crois qu'avant d'essayer d'implémenter des patterns de conception applicative, il faut avoir fait ses classes avec le langage. Si vous ne vous sentez pas à l'aise avec les concepts de fonction, de classes ou tout simplement que vous n'êtes pas confiant dans l'utilisation du langage, inutile d'aller plus loin et de griller les étapes en voulant à tout prix faire de la conception, vous allez vous y casser les dents.

    L'écrasante majorité des implémentation MVC sont en objet par exemple. J'entends parler à tout va de MVC sur le forum, souvent par des débutants en programmation qui se sont laissé convaincre que c'était la seule façon de concevoir une application. Il n'en est rien, il est inutile de suivre cette mode (car c'en est une) si vous n'avez pas des bases solides en programmation et en architecture logicielle.

    Par ailleurs, vous devriez toujours vous poser la question de ce qui est souhaitable pour votre application, on ne fait pas d'architecture pour le plaisir mais pour résoudre une problématique. Si celle-ci est simple et que vous pouvez vous en passer, faites-le ! Je me retrouve encore aujourd'hui régulièrement confronté à des problème qui ne nécessitent pas la mise en place d'infrastructures complexes, dans ces cas là, je vais à l'essentiel, point.

  13. #13
    Membre habitué

    Profil pro
    Pompier
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Pompier

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Points : 171
    Points
    171
    Par défaut
    bonjour,
    merci pour cette réponse qui est plus que judicieuse.

    Sauf que je ne sais pas trop par où commencer ni où trouver l'info (sur ce site je suppose).

    Si vous avez un programme chronologique des compétences à acquérir, je suis preneur.

    Merci d'avance

  14. #14
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Je n'ai encore jamais fais de programme d'apprentissage pour PHP. En même temps, je ne suis pas enseignant

    Mais d'une manière générale, je te recommande de suivre ce plan:
    1. Comprendre le protocole HTTP
    2. Comprendre Apache et les problématiques client / serveur
    3. Comprendre les URL, URI, URN et la gestion des ressources par Apache
    4. Comprendre HTML et CSS
    5. Comprendre le fonctionnement de PHP (et ses SAPI)
    6. Maîtriser les expressions booléenes et l'algèbre booléene
    7. Maîtriser les structures de contrôles
    8. Maîtriser la programmation procédurale
    9. Maîtriser la gestion des erreurs en PHP
    10. Maîtriser la manipulation du protocole HTTP en PHP
    11. Maîtriser les flux (fichiers, production de flux en sortie etc.)
    12. Comprendre les problématiques de sécurité des applications web
    13. Comprendre le fonctionnement des RDBMS (SGBD en français) comme MySQL
    14. Maîtriser le SQL
    15. Maîtriser les requêtes SQL en PHP


    Note: La compréhension et la maîtrise sont deux choses différentes. Comprendre signifie que tu sais que ça existe et comment ça fonctionne. Maîtriser signifie que tu sais le faire sans regarder la doc ou les cours. Par exemple, je ne te dis pas d'apprendre tous les headers HTTP par coeur mais juste savoir lesquels sont les plus utilisés et comment ils fonctionnent. Par contre, tu dois pouvoir programmer un script en procédural sans suivre un tuto.

    La suite dépends de toi mais je pense avoir listé les fondamentaux que tout bon développeur PHP se doit de connaitre. J'insiste particulièrement sur la compréhension du protocole HTTP, c'est tout de même la base de la base et trop de développeurs la négligent sous prétexte que c'est pris en charge par le serveur HTTP (Apache). Pas plus que tu ne sera un bon pilote si tu n'y connais rien en mécanique, tu ne sera pas un bon développeur web si tu ne comprends pas HTTP.

    Coté source d'information, nous avons des cours et tutoriels qui couvrent la plupart de ces aspects. Sinon, Wikipedia est une source d'information assez fournie pour tout ce qui attrait aux concepts généraux.

    ATTENTION: w3school n'est pas une référence de qualité, ils sont juste doués en référencement mais la plupart de leurs ressources sont superficielles et souvent incomplètes. Je te recommande plutôt d'aller sur le site du w3c.

    A toi de jouer.

Discussions similaires

  1. Réponses: 10
    Dernier message: 03/12/2009, 21h45
  2. [ASP.NET MVC] Codebehind d'une vue partielle
    Par Nadd dans le forum ASP.NET
    Réponses: 2
    Dernier message: 02/10/2009, 13h59
  3. Réponses: 6
    Dernier message: 09/04/2008, 09h57
  4. [Struts] - Charger une vue en fonction du navigateur ?
    Par Tigrou35 dans le forum Struts 1
    Réponses: 1
    Dernier message: 07/08/2007, 11h58
  5. [Spring MVC] Renvoyer vers une vue depuis un intercepteur
    Par ChtiGeeX dans le forum Spring Web
    Réponses: 2
    Dernier message: 01/04/2007, 10h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo