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 :

[Sécurité] Passer une page en paramètre


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 200
    Points : 66
    Points
    66
    Par défaut [Sécurité] Passer une page en paramètre
    Bonjour,

    excusez tout d'abord si ma question parait bête, je ne sais pas vraiment comment la formuler....

    Une page composée de Includes (entete, menu, contenu, footer) regroupe plusieurs résumés de fiches avec des liens respectifs vers les fiches en question. Comment faire pour passer l'adresse de la fiche pour que le lien passe en include (ou autre) sans pour autant devoir recharger tout son environnment (les autres includes) ?

    J'espere avoir été clair
    merci par avance

  2. #2
    Membre averti Avatar de cyreel
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2004
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2004
    Messages : 388
    Points : 324
    Points
    324
    Par défaut
    j'aurai bien voulu t'aider, mais je ne comprend pas tres bien ton probleme!

    tu veux passer un lien en include? comprends vraiment pas! explique!!!

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 200
    Points : 66
    Points
    66
    Par défaut
    je m'en doutais.... je recommence :

    pour un site de voitures (par ex),
    j'ai une page composée de plusieurs fichiers en Include (entete.php, menu.php, Contenu.php, footer.php). Le fichier Contenu.php liste plusieurs liens vers d'autres fichiers qui sont en fait des fiches descriptives pour chaque voiture.
    Ces fiches n'ont pas de fichier en Include, donc pas d'entete, de menu ni de footer.

    Je voudrais, au click sur un de ces liens, charger la fiche d'une 206 par exemple mais que le fichier 206.php remplace Contenu.php. De cette mainière, la fiche possède son entete, le menu et le footer.

    Que mettre en 'href' sur chacun des liens ?
    j'espère avoir été clair....désolé mais aujourd'hui j'ai du mal à rassembler mes idées! ça doit etre le soleil qui reapparait...

    Merci

  4. #4
    Membre averti Avatar de cyreel
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2004
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2004
    Messages : 388
    Points : 324
    Points
    324
    Par défaut
    je crois comprendre maintenant!!

    Et que se passe-t-il quand tu met en 'href' juste le nom de la page (ex: href="206.php"?
    moi je crois que ca devrait passer. oui aussi simplement. parce que en mettant cela tu appelle uniquement cette page et si elle n'incut pas les fichier d'entete de la page precedente elle s'affichera avec ce que tu aura definis ds 206.php.

    j'espère que je repond a ta preoccupation a moins que j'ai rien compris!!!!

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 200
    Points : 66
    Points
    66
    Par défaut
    BEN EN fait non, ça ne passe pas, elle affiche seulemnt la page sans tout son 'environnement'. ce n'est pas comme avec les frames...
    qqn a une idée ou c'est encore trop flou ?

    merci

  6. #6
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 53
    Points : 54
    Points
    54
    Par défaut
    Oui mais faut passer la la programation Objet comme ca tu pourras en fonction d un id afficher la bonne fiche.

    Vas voir ces tutos

    http://hachesse.developpez.com/objetphp/


    http://stephaneey.developpez.com/tut...p5_nouveautes/


    Sinon je vois pas trop sans passer par des frames comment tu peux faire

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 200
    Points : 66
    Points
    66
    Par défaut
    merci de ta réponse Stef, quoique ça demande du temps, je suis conscient qu'il faut que j'y passe...

    Mais ça m'étonne qu'il n'y ait paq qqn qui ait rencontré ce genre d'obstacle ou qu'il n'existe pas un tuto/script sur le thème !
    histoire d'en finir rapidement avec ce problème.
    merci

  8. #8
    Membre éclairé Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Points : 799
    Points
    799
    Par défaut
    miltonis, tu as plusieurs solutions :
    1. utiliser des frames : le "contenu.php" est dans une frame séparée, lorsque tu cliques sur le lien de la fiche voiture, il n'y a que cette frame qui change.
      Avantage : simple à mettre en place
      Inconvénients : c'est "pas propre", c'est anti-ergonomique (bouton précédent inutilisable, risques de problèmes d'incompatibilité entre navigateurs à prévoir, et autres joyeusetés), ça gène voir empêche complètement l'indexation par les moteurs de recherche (et pour un site à vocation commerciale, c'est un gros problème), et en plus c'est pas standart et déconseillé par le W3C

    2. Utiliser du javascript, voir de l'AJAX : le lien vers la fiche client n'est pas un vrai lien hypertexte (pas un <a href=...), c'est un élément quelconque sur lequel tu mets un évènement qui lance une fonction javascript. Cette fonction va ensuite chercher (par exemple avec un xmlHTTPRequest) le contenu de la fiche voiture et remplace le code html d'une partie de ta page grâce à la propriété innerHTML des éléments du DOM (voir doc javascript).
      Avantage : l'interface sera très réactive, lorsque l'utilisateur clique sur l'élément d'interaction, la fiche voiture s'affiche tout de suite sans rechargement de la page
      Inconvénientss : un peu plus compliqué à programmer, c'est pas extrêmement dur non plus, mais si tu es débutant ça peut être un peu galère (en même temps, ça te fait apprendre). De plus un utilisateur avec javascript désactivé ne pourra pas utiliser le site. Enfin, rajoute en plus tous les inconvénients de la solution 1.

    3. en php, mettre dans ta fiche voiture les include pour les menus, entêtes, pied etc ... pour tout recharger à chaque fois
      Avantages : beaucoup plus propre, simple à mettre en place, plus ergonomique, pas de problème pour l'indexation, bref ... tout le contraire des inconvénients des solutions 1 et 2
      Inconvénient : risque d'utiliser 0.001% de ressources serveur en plus, ce qui peut être gênant si tu as des algorithmes récursifs de barbare dans tes menus, et que tu as 300 000 visiteurs/seconde et que tu es hébergé sur un 386 avec 2 octets de RAM ... si ce n'est pas le cas, tu ne sentira aucune différence niveau perfs



    En résumé je te conseille vivement la solution 3 si ton site est public, et à la rigueur la 2 si c'est une appli de gestion destinée à être utilisée en interne et si tu as vraiment une bonne raison de ne pas faire des include

  9. #9
    Membre éclairé Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Points : 799
    Points
    799
    Par défaut
    PS : deux précisions

    1ere ment :
    Citation Envoyé par ste06
    Oui mais faut passer la la programation Objet comme ca tu pourras en fonction d un id afficher la bonne fiche.
    OUI, passer l'id pour récuperer la fiche est la bonne chose à faire
    NON, on n'est pas obligé d'utiliser de la POO pour ça

    2e ment :
    si tu passes, non pas juste un id, mais carrément une url ou nom de fichier en paramêtre, sois EXTRÊMEMENT PRUDENT à la façon dont tu codes, car sinon il y a un fort risque d'introduire de graves failles de sécurité (voir sur developpez et sur google : la faille include)

  10. #10
    Membre averti Avatar de cyreel
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2004
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2004
    Messages : 388
    Points : 324
    Points
    324
    Par défaut
    je crois qu'avec les réponses j'ai compris ta préoccupation.

    effectivement ma proposition n'étaitpas bonne (je viens de la tester! ).

    je crois que Hervé Saladin a déjà donné toutes les propostions.
    moi j'ai utilisé la troisième proposition et c'est la meilleure!

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 26/07/2006, 07h52
  2. Comment passer une procédure en paramètre ?
    Par gudul dans le forum Langage
    Réponses: 4
    Dernier message: 30/09/2005, 13h57
  3. Réponses: 1
    Dernier message: 15/04/2005, 11h30
  4. [Conception] Passer une fonction en paramètre
    Par pejay dans le forum Langage
    Réponses: 9
    Dernier message: 09/12/2004, 13h58
  5. Passer une procédure en paramètre ?
    Par Cornell dans le forum Langage
    Réponses: 2
    Dernier message: 24/10/2003, 12h21

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