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

Bibliothèques et frameworks PHP Discussion :

Template ou cms C'est quoi la différence ?


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 28
    Points : 28
    Points
    28
    Par défaut Template ou cms C'est quoi la différence ?
    Bonjour à tous!
    J'ai un site dynamique géré avec une base de donnée MySql, avec des liens du genre "http://www.mydomain.com/index.php?p=mypage" et je me demandait comment faire pour avoir toujours un site dynamique avec des liens comme pour les sites statiques style "http://www.mydomain.com/mypage.php" pour toutes pages de mon site y compris celles générées à la volet.
    Dans ma quête de solution j'ai entendu parler de Template et de cms. Malgrès tous les tutos et cours que j'ai pu lire là dessus j'avoue que je les trouve assez compliqué. Et donc je voudrais savoir dans un premier temps si ces deux mots parlent de la même chose? ensuite si l'un deux mots peut résoudre mon problème de lien, enfin quelqu'un aurait--t'il un tuto assez simple ou avec des explications détaillés pour m'aider à comprendre et à me familiariser avec eux? Je précise que je me débrouille bien en php5 OO. Merci d'avance pour le soutient.....

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

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

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    premier temps si ces deux mots parlent de la même chose?
    Non rien à voir.
    Un CMS (Content Management System) est un outil de gestion de contenu. Pour simplifier c'est un outil pour créer un site rapidement. On peut citer par exemple wordpress , joomla, drupal ...

    Un template (plutôt un moteur de template dans ton cas) est un outil qui permet de séparer le contenu html du php. C'est en général pratique quand on travail avec des graphistes. On leur fournit un simple fichier html dénué de tout php , il sont alors plus à l'aise et bousille pas ton code parce que "ca faisait pas beau là" (c'est du vécu ^^ ).
    On peut citer par exemple Twig , smarty ...

    ensuite si l'un deux mots peut résoudre mon problème de lien,
    Non

    Pour résoudre ton problème regarde du coté de la récriture d'url aussi appeler url rewriting
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    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
    Voici un tutoriel simple pour acquérir les bases en url rewriting.
    La réécriture d'URL est un moyen puissant d'optimiser son référencement et permet de résoudre des problématiques complexes de liens sur une application web, ses domaines d'application sont aussi nombreux que variés. Je te recommande fortement de jeter un oeil sur la doc Apache.

    Concernant les moteur de templates, personnellement je suis contre. Il ne faut jamais oublier que PHP à été conçu au départ pour mettre du dynamisme dans des pages statiques, ce qui est le rôle d'un moteur de templates. Utiliser un mécanisme au dessus de PHP pour faire ça relève selon moi de la redondance.
    Pour te faciliter la vie dans l'écriture de vues dynamiques en PHP, je te recommande la syntaxe alternative.

    Concernant les CMS, c'est vrai que c'est pratique et que ça couvre 98% des usages courants d'un site web, mais attention à ne pas essayer à tout prix de faire rentrer un besoin carré dans une solution ronde
    Exemple: "mon CMS est parfait pour faire du blog, est ce que je peux l'adapter pour qu'il fasse annuaire ?" A éviter à tout prix car à transformer un produit fini aussi complexe qu'un CMS de la classe de Wordpress ou SPIP finit généralement en bidouillage le plus immonde et à l'introduction de régressions voire l'ouverture de brêches de sécurité.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 28
    Points : 28
    Points
    28
    Par défaut url rewriting...
    Bonsoir....
    J'ai commencé, comme vous me l'avez recommandé, à m'initier au url rewriting à travers le tuto ci dessous:

    - Commencez par créer une page test.php à la racine de votre serveur. - Vous y insererez un simple texte : "Bonjour, on teste le mod_rewrite d'Apache"
    - Créez un fichier .htaccess et vous y insererez le code suivant :

    RewriteEngine on
    RewriteRule ^test\.html$ /test.php [L]

    - Déposez ce "htaccess" et votre page "test.php" via votre FTP à la racine de votre site (*)
    * ou dans un même répertoire

    Il ne vous reste plus qu'à entrer l'URL suivante dans votre naviguateur favori : http://votresite.com/test.html, et vous devriez voir apparaitre le texte de la page "test.php".

    Et là, deux hypothèses :
    - soit la page apparaît et l' URL test.html est bien réecrite en test.php
    - soit vous avez une erreur 404, ou plus probable une erreur 500 et là... rien à faire, le mod_rewrite n'est pas actif chez votre hébergeur.

    Tuto que vous pourriez voir sur le lien http://www.expreg.com/rewrite.php. J'ai mis l'exercice en pratique seulement la page s'affiche mais l'url dans le navigateur ne change, je reste sur test.html bien qu'il m'affiche le contenu de la page test.php. Merci de me dire pourquoi, parce que je ne comprend pas. je l'ai refait à trois reprises pourtant.........

  5. #5
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 28
    Points : 28
    Points
    28
    Par défaut url rewriting compris
    Salut!
    juste dire que mon dernier message resulte d'une mauvaise compréhension la syntaxe RewriteRule. A force de refaire l'exercice j'ai pu comprendre. Je vais maintenant l'appliquer à mon site à proprement dit. Merci en tout cas de m'avoir mis sur la voie......

  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
    J'ai mis l'exercice en pratique seulement la page s'affiche mais l'url dans le navigateur ne change
    Je pense que tu as compris en relisant l'exercice mais pour clarifier: Apache ne change pas les URL coté navigateur: il traduit des url (ou les réécrit si tu préfère). Si tu souhaite que l'url change dans le navigateur, il faut faire une redirection (voir location).

  7. #7
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 28
    Points : 28
    Points
    28
    Par défaut je suis un peu confus
    Excusez moi Benjamin, mais je crois que je ne comprend plus rien vous voyez! Mon but en que l'url change aussi bien dans le navigateur que pour le moteur de recherche. Je ne sais pas comment faire avec la rédirection et la réécriture de l'url. S'il vous plait aidez-moi à comprendre surtout avec un tuto commenté. Ca m'aiderais beaucoup... Merci.............

  8. #8
    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
    Personnelement je ne crée par 50 règles pour réécrire toutes les url de mes sites, je procède comme suit (inspired by Lithium ):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !favicon.ico$
        RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
    </IfModule>
    Ces règles signifient: Tout ce qui n'est ni un répertoire ni un fichier doit être redirigé et vers index.php et tout ce qui est dans l'url va dans le paramètre GET nommé url.

    Donc coté PHP, tout passe par index.php et je réccupère systématiquement un paramètre qui peut avoir cette bouille:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    // Url tapée http://mon.site.com/articles/new/1
    var_dump($_REQUEST);
    // va afficher [url = "articles/new/1"]
    Ensuite, je définis des expressions régulière pour déterminer quelle route emprunter dans mon application.
    Enfin, ça c'est une des nombreuses façons de se servir de l'URL rewriting.

    Sur les page du site, mes attributs href respectent tous cette syntaxe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="/article/1/commenter">Ajouter un commentaire</a>
    Ils utilisent directement les URL réécrites, tout simplement.

    Voici un autre article sur l'URL rewriting: http://apache.developpez.com/cours/urlrewriting/ (au cas où, c'est jamais perdu )

Discussions similaires

  1. Réponses: 13
    Dernier message: 14/05/2018, 11h47
  2. Réponses: 2
    Dernier message: 01/12/2010, 10h47
  3. C'est quoi la différence entre Stateful et un MangerBean(@SessionScoped )
    Par ghost10 dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 24/11/2010, 03h41
  4. c'est quoi la différence entre
    Par deubelte dans le forum Visual C++
    Réponses: 1
    Dernier message: 12/06/2008, 11h07
  5. C’est quoi la différence
    Par hitech_tm dans le forum C#
    Réponses: 3
    Dernier message: 30/03/2008, 16h51

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