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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Script Site dynamique par Pierre-Baptiste Naigeon


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 97
    Points : 47
    Points
    47
    Par défaut Script Site dynamique par Pierre-Baptiste Naigeon
    Bonjour,

    Tout d'abord merci à l'auteur pour ce script bien ficelé.

    J'aurais aimé savoir comment faire en sorte que certaines pages du site soient protégées par mot de passe et login. Comment intégrer cela au site existant décrit dans le tutoriel ??

    D'avance merci.

    Jhon

  2. #2
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    Bonjour,

    Je me permet de retranscrire ici les réponses que j'ai apportées en réponse à vos MP, au cas ou d'autres utilisateurs seraient interessés

    _______________________________


    En fait, je voit bien une solution :

    - rajouter un champ "protégé" oui / non à la DB
    - proposer une identification.

    Il suffirai alors de vérifier que l'identification est bien faite, et si tel est le cas, d'afficher dans les liens toutes les pages. L'identification peut par exemple être suivie à l'aide de sessions.
    Si il n'y a pas d'identification, on se contente d'afficher toutes les pages ou protégé = non.

    Il faudra aussi penser à vérifier au moment de l'affichage de la page si l'accès est autorisé, des fois qu'un petit malin s'amuse à modifier l'URL à la main.

    Il faudra prévoir une page spéciale vers laquelle rediriger en cas d'identification refusée.

    Pas besoin d'utiliser les redirections, il suffit de modifier la récupération de la page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (isset($_GET['id_page'])) {
    		$_ENV['id_page'] = intval($_GET['id_page']);
    	} else {
    		$_ENV['id_page'] = $id_page_accueil;
    	}
    Il faut rajouter à ce stade une vérification croisée de l'identification et du type de page (protégée ou non).
    Si l'accès est refusé, il suffit de modifier la valeur de $_ENV['id_page'] vers la page de refus par défaut.

    La seule fonction qu'il faudra penser à modifier est affiche_menu(), afin de pouvoir dans la requête :
    - soit la laisser telle quelle -> affiche toutes les pages -> identification

    - rajouter une clause "AND PROTEGE = 0' -> affiche seulement les pages non protégées -> non identifié

    en suivant ce schema, il faudraque toutes les pages filles d'une page protégée soient protégées également.
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  3. #3
    Membre à l'essai
    Profil pro
    mesureur en infiltrométrie
    Inscrit en
    Janvier 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : mesureur en infiltrométrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 21
    Points : 24
    Points
    24
    Par défaut petit pb
    salut, et merci pour ce tuto tres clair meme pour un noob comme moi, mais j'ai un petit probleme : j'ai suivi scrupuleusement le tuto mais j'ai un message d'erreur :

    Parse error: parse error in e:\program files\easyphp1-8\www\index.php on line 53

    Désolé si ma question vous paraît idiote mais je débute hein ....

  4. #4
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    il n'y a pas de questions idiotes, on a tous débuté un jour

    Est-ce qu'il serait possible d'avoir le message d'erreur complet SVP ?

    Et le bout de code de la ligne 53 et des alentours ?

    je soupconne un point virgule oublié, mais j'aimerai bien voir le bout de code

    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  5. #5
    Membre à l'essai
    Profil pro
    mesureur en infiltrométrie
    Inscrit en
    Janvier 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : mesureur en infiltrométrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 21
    Points : 24
    Points
    24
    Par défaut
    le message d'erreur cité plus haut est le message complet ! firefox ne m'affiche que ça !

    Voici le bout de code du fichier "index.php" en question :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <div id="menu_vertical">
    <?php
        // Affiche le menu en cours => id de la page = id de la page en cours.
        echo affiche_menu($_ENV['id_page']);
    ?>
    </div>
    La ligne 53 est : "?>"

    Merci à toi !

  6. #6
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    je ne comprend pas l'erreur

    tu as fait quoi ? un copier coller du code, tout retapé à la main, ou repris les sources fournies dans le zip ?
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  7. #7
    Membre à l'essai
    Profil pro
    mesureur en infiltrométrie
    Inscrit en
    Janvier 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : mesureur en infiltrométrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 21
    Points : 24
    Points
    24
    Par défaut
    J'ai copier/coller les codes.

    Ma base de données est bonne et mes paramètres de connexion à cette base aussi..

    Sinon je n'ai rien changé dans les codes PHP..

  8. #8
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    je viens de tester à partir de mon article, en recréant ma base et en reprenant mes sources, et tout marche très bien.

    Est-ce que tu pourrai mettre ta page en pièce jointe STP que j'épluche ça ?

    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  9. #9
    Membre à l'essai
    Profil pro
    mesureur en infiltrométrie
    Inscrit en
    Janvier 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : mesureur en infiltrométrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 21
    Points : 24
    Points
    24
    Par défaut
    ma page "index.php" tu veux dire parce que je l'ai testé seulement en local pour le moment..

    index.php

    mes_fonctions.php

  10. #10
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    alors pour commencer, ton index.php marche parfairement chez moi

    Ensuite, c'est le fichier mes_fonctons.php qui pose problème.
    Principalement à cause de choses mal commentées (les lignes de '---', ...)

    dans la connexion à la DB aussi : $BASE_TEST n'est défini nulle part, donc ou bien mettre "base_test" (avec les guillemets), ou bien "$name_DB" (sans les guillemets).

    Ce que je peux te conseiller, c'est d'utiliser un éditeur de texte qui fait la coloration syntaxique, ça aide beaucoup
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  11. #11
    Membre à l'essai
    Profil pro
    mesureur en infiltrométrie
    Inscrit en
    Janvier 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : mesureur en infiltrométrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 21
    Points : 24
    Points
    24
    Par défaut
    je vais regarder tout ça, en tout cas MERCI BEAUCOUP de me répondre, et si rapidement ....

    bonne soirée !

  12. #12
    Membre à l'essai
    Profil pro
    mesureur en infiltrométrie
    Inscrit en
    Janvier 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : mesureur en infiltrométrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 21
    Points : 24
    Points
    24
    Par défaut
    Bon MERKI Monsieur, tout marche parfaitement, maintenant : personnalisation !!!

    Bravo et respect !!!

  13. #13
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut

    Merci beaucoup.
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  14. #14
    En attente de confirmation mail
    Inscrit en
    Février 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    bonjour titoumimi,
    débutant aussi en php, j'ai pu faire une premiere version de mon site en réutilisant tel quel le script puis en faisant deux trois modifs, rin de bien compliqué et tout fonctionne à merveille. seulement voila, je cherche a faire une sorte de mix entre ton script et celui traitant des classes d'abstractions.
    Concretement je cherche à utiliser les templates de phpBB en réecrivant moi meme le schmilblik et là c'est déja bcp plus compliqué.
    bref! la question : d'où vient la variable $idpage? où est-elle definie? quel est son mecanisme et ces eventuelles restrictions? quel est le rapport entre $idpage et $_ENV['id_page'] s'il y en un?
    Sache que je tape ces mots la corde au cou, les poignés tranchés, et la tête dans la gaziniere, tout en meme temps, apres 3 jours passer sur le probleme puisque je me retrouve avec des "Notice: Undefined variable"

    merci d'avance

  15. #15
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    Bonjour

    En fait, $_ENV['id_page'] est l'ID de la page en cours. Soit on le récupère par l'url, soit il prend sa valeur par défaut.

    après, $id_page, c'est simplement le nom de la variable locale utilisée dans mes fonctions, qui ne fait que reprendre la valeur de $_ENV['id_page']
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  16. #16
    En attente de confirmation mail
    Inscrit en
    Février 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    ...
    à force d'avoir le nez dessus j'ai tout melangé...
    le simple fait d'énoncer l'évidence ma permis de comprendre que mon probleme n'était pas là...

    merci infiniment , je vais pouvoir à appelez les pompiers pour me recoudre les veines.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Masquer des pages - Script Site dynamique par Pierre-Baptiste Naigeon
    Par utilisateurdunet dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 24/05/2009, 02h12
  2. Réponses: 4
    Dernier message: 22/10/2006, 19h01
  3. Comment créer un site dynamiquement modifiable par le client ?
    Par freija dans le forum Général Conception Web
    Réponses: 5
    Dernier message: 03/07/2006, 18h24
  4. [Tableaux] Script de recherche pour site dynamique
    Par clemsouz dans le forum Langage
    Réponses: 7
    Dernier message: 12/05/2006, 16h31

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