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

Requêtes MySQL Discussion :

Pseudo frame, sécurité d'affichage à l'aide d'une table mysql


Sujet :

Requêtes MySQL

  1. #1
    Membre éprouvé Avatar de gretch
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2006
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 165
    Points : 1 250
    Points
    1 250
    Par défaut Pseudo frame, sécurité d'affichage à l'aide d'une table mysql
    les codeurs, acrochés vous c'est parti,

    voila le topo :

    1. d'un coté, une table Mysql, contenant 2 champs, qui à pour but de lister les pages autorisées à etre affichées dans ma pseudo-frame principale.

    nom de la table = validpage
    Champs1 = nompage // ce nom corespond à la variable $page qui fera référence dans mes requetes
    Champs2 = filepage // l'url de la page à afficher


    [LIST=1][*]de l'autre une variable $page qui évolue selon la page que le visiteur veut afficher,

    je voudrais rechercher si $page est présent dans le champ nompage de la base validpage :
    si oui, : $pageok doit prendre la valeur du champs filepage du même enregistrement,

    sinon, : $pageok = index.php

    etant en PHP je suis en train de devenir avec ma requete de !!

  2. #2
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 860
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 860
    Points : 3 445
    Points
    3 445
    Par défaut
    Salut,

    Et ta requête elle ressemble à quoi ? C'est juste un select tout simple. ( SELECT * FROM table WHERE page='testPage' )

    D'ailleurs, je te conseille de charger le contenu de cette table en mémoire en variable globale ( portée application ) : ainsi, tu n'auras plus qu'à rechercher dans ton tableau associatif l'url correspondante au nom de la page, sans faire une requête à chaque fois. ( donc avec un SELECT * FROM table tout simple )

    Un petit bout de code serait le bienvenu

  3. #3
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query = "SELECT nompage, filepage FROM validpage WHERE nompage='$page'";

  4. #4
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 860
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 860
    Points : 3 445
    Points
    3 445
    Par défaut
    Oublie la suggestion au sujet de la portée application : j'oubliais qu'on était en PHP

  5. #5
    Membre éprouvé Avatar de gretch
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2006
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 165
    Points : 1 250
    Points
    1 250
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $query= "SELECT * FROM validpage WHERE nompage='$page'";
    $pageok =mysql_query($query)or die ("query pa bon".mysql_error());
    $nbrenr = mysql_num_rows($pageok);
    echo"<p>nbr enreg. : $nbrenr</p>"; // pour verifier le nbr d'enrg au cas ou mais pas de prob 
    $nbrenr2 = mysql_num_fields($pageok); 
    echo"<p>nbr champs. : $nbrenr2</p>"; // pour verifier le nbr de champs au cas ou mais pas de prob
     
    if ($page == ($pageok['nompage'])) {
    include($pageok['filepage']); // ---on appel l'URL de la page 
    }else
    {include('accueil.php'); // ----------------page par defaut si page non autorisée
    };
    voila le code, mais l'include se fait tjr sur index.php
    je n'arrive pas a afficher le contenu de $pageok.

    Voila, je crois qu'avec se code cela devrait etre plus facile à capter, en revanche, cela ne marche pas pour autant.

  6. #6
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    et si tu faisais un petit mysql_fetch_array avant d'utiliser ton résultat ??

  7. #7
    Membre du Club
    Inscrit en
    Mai 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mai 2006
    Messages : 60
    Points : 66
    Points
    66
    Par défaut
    Modifies ton code de cette façon. Le problème est que $pageok prend la valeur d'un mysql_result lorsque tu fais ton mysql_query, et non un tableau. Tu dois faire un mysql_fetch_array sur ton resultat de requete SQL.

    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
    $query= "SELECT * FROM validpage WHERE nompage='$page'";
    $pageok =mysql_query($query)or die ("query pa bon".mysql_error());
    $nbrenr = mysql_num_rows($pageok);
    echo"<p>nbr enreg. : $nbrenr</p>"; // pour verifier le nbr d'enrg au cas ou mais pas de prob 
    $nbrenr2 = mysql_num_fields($pageok); 
    echo"<p>nbr champs. : $nbrenr2</p>"; // pour verifier le nbr de champs au cas ou mais pas de prob
    
    if ($nbrenr > 0) {
     
    
    $pageok = mysql_fetch_array($pageok, MYSQL_ASSOC); if ($page == ($pageok['nompage'])) { include($pageok['filepage']); // ---on appel l'URL de la page }else {include('accueil.php'); // ----------------page par defaut si page non autorisée };
    }

  8. #8
    Membre éprouvé Avatar de gretch
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2006
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 165
    Points : 1 250
    Points
    1 250
    Par défaut Merci !!!
    YEEEEEEHHHHH

    ça fonctionne, j' ai juste rajouté un dernier else ( pour le cas ou le visiteur n'a pas de variable $page définit ( si c'est sa premiere page ...) par consequant le code devient :
    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
    $query= "SELECT * FROM validpage WHERE nompage='$page' ";
    $pageok =mysql_query($query)or die ("query pa bon".mysql_error());
    $nbrenr = mysql_num_rows($pageok);
     
    
     if ($nbrenr > 0) {
     
    $pageok = mysql_fetch_array($pageok, MYSQL_ASSOC);
    if ($page == ($pageok['nompage'])) {
    include($pageok['filepage']); // ---on appel l'URL de la page 
    }else
    {include('accueil.php'); // ----------------page par defaut si page non autorisée
    };}else
    {include('accueil.php'); // ----------------page par defaut si page non autorisée
    };





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

Discussions similaires

  1. Affichage des données d'une table MySQL dans un ListView selon l'id
    Par loviso dans le forum Composants graphiques
    Réponses: 0
    Dernier message: 30/07/2012, 16h28
  2. Réponses: 0
    Dernier message: 24/04/2010, 21h28
  3. affichage des données d'une table mysql
    Par chrisl0 dans le forum Langage
    Réponses: 1
    Dernier message: 05/02/2009, 18h21
  4. Réponses: 2
    Dernier message: 15/12/2006, 10h31
  5. besoin d'aide sur une requête mysql
    Par unmulot dans le forum Langage SQL
    Réponses: 5
    Dernier message: 07/07/2006, 13h17

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