PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 17-03-2010 19:55:22

pilaf
Membre
Inscription : 17-03-2010
Messages : 9

include de page grace a un line dans une cellule de mysql

bonjour, je n'arrive pas a inserer une page php dans une autre page via un lien dans ma base.
J'ai essaye plusieurs solution mais je n'arrive que a afficher le texte de la cellule dans ma page "incrustee". J'ai mis le lien en dur dans la cellule, j'ai aussi essaye de mettre l'include directement dans la cellule. Aucune des 2 ne fonctionne. Peut etre pas la bonne syntaxe ou d'echappement, chui mewbi. Pourriez vous me donner une syntaxe valable, svp ? Merci de votre aide.

Hors ligne

#2 17-03-2010 21:17:55

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : include de page grace a un line dans une cellule de mysql

Pourrais-t-on voir ton code afin de mieux visualiser d'une part ton problème et d'autre part te dire ce qui ne va pas ?

Dernière modification par xTG (17-03-2010 21:18:25)

Hors ligne

#3 17-03-2010 23:17:40

pilaf
Membre
Inscription : 17-03-2010
Messages : 9

Re : include de page grace a un line dans une cellule de mysql

bonjour xTG, dans la bas j'ai mis dans la cellule : include /entete.php .
il me retourne que le lien mais pas la page.
Merci de ta reponse.

Hors ligne

#4 18-03-2010 06:45:14

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : include de page grace a un line dans une cellule de mysql

Saluton,
Peut-on voir le source HTML généré, car là, je crains le pire.


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#5 18-03-2010 14:01:28

pilaf
Membre
Inscription : 17-03-2010
Messages : 9

Re : include de page grace a un line dans une cellule de mysql

bjr Maljuna Kris,
je l'envoie

Dernière modification par pilaf (18-03-2010 14:23:07)

Hors ligne

#6 18-03-2010 16:33:09

pilaf
Membre
Inscription : 17-03-2010
Messages : 9

Re : include de page grace a un line dans une cellule de mysql

SOURCE GENEREE

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<!-- Insère les mots-clés extraits de la DB dans les meta -->
<META NAME="keywords" lang="fr" CONTENT="">
<!-- Insère la description extraite de la DB dans les meta -->
<META NAME="Description" CONTENT="Dishes">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<!-- Insère le titre extrait de la DB dans la balise correspondante -->
<title>Menu</title>
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
<body>

    <div id="entete">

include ('entete.php')
    </div>
    <div id="menu_horizontal">

        <ul>
            <li><a href="index.php?id_page=2">Menu</a></li>
            <li><a href="index.php?id_page=3">Daily Specials</a></li>
            <li><a href="index.php?id_page=4">Catering</a></li>

            <li><a href="index.php?id_page=5">Pastries</a></li>
            <li><a href="index.php?id_page=6">Location</a></li>
            <li><a href="index.php?id_page=7">Contact</a></li>
        </ul>
    </div>
    <div id="chemin_fer">
        U25A0
         -> <a href="index.php?id_page=1">Home</a>

         -> <a href="index.php?id_page=2">Menu</a>
    </div>
    <div id="bloc_central">
        <div id="menu_vertical">
            <ul>
                <li>
                    <a href="index.php?id_page=8">Salads</a>

                </li>
                <li>
                    <a href="index.php?id_page=9">Sandwiches</a>
                </li>
                <li>
                    <a href="index.php?id_page=10">Specials</a>
                </li>
                <li>

                    <a href="index.php?id_page=11">Sides</a>
                </li>
                <li>
                    <a href="index.php?id_page=12">Beverages</a>
                </li>
            </ul>
        </div>
        <div id="contenu">

            Our dishes
        </div>
    </div>
   </div>
    <div id="pied_page">
        <hr>
        Ceci est le pied de page...
    </div>
</body>
</html>
     ____________________
quelqu'un pour me renseigner ?

Dernière modification par pilaf (18-03-2010 16:47:15)

Hors ligne

#7 18-03-2010 16:46:54

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : include de page grace a un line dans une cellule de mysql

Si c'est le code généré que tu nous présente là c'est normal.
Si tu stockes une commande PHP dans une variable il sera affiché et non exécuté.

Pour faire ce que tu veux il faut stocker le lien vers le fichier entete.php dans ta base. Puis utiliser la variable que te renvoie les commandes mysql dans la fonction include() de PHP.
Le chemin est un texte, donc étant dans une variable il reste un texte et cela ne gênera donc pas.

Par contre si on se penche niveau sécurité je trouve vraiment affreux de stocker un lien vers un fichier à inclure...

Hors ligne

#8 18-03-2010 16:50:42

pilaf
Membre
Inscription : 17-03-2010
Messages : 9

Re : include de page grace a un line dans une cellule de mysql

CODE SOURCE :
Dans index.tpl :
    <div id="entete">
{ENTETE}
    </div>
    <div id="menu_horizontal">
Dans index.php :
// Envoi des variables de la bd au gabarit.
$template->assign_vars(array(
    'ENTETE'           => $_ENV['entete_page'],
    ));
Dans mes fonction.php (inclus)
    $_ENV['entete_page'] = $tabl_result['Entete_page'];
et dans la base :
include (''entete.php'')

Hors ligne

#9 18-03-2010 16:54:45

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : include de page grace a un line dans une cellule de mysql

Cela revient au même problème que ce que j'ai déjà cité.

Hors ligne

#10 18-03-2010 17:34:23

pilaf
Membre
Inscription : 17-03-2010
Messages : 9

Re : include de page grace a un line dans une cellule de mysql

Bonjour xTG, merci de ta reponse.
Etant debutant, je suis pas sur d'avoir tout compris. Il faut donc que je mette la fonction include dans ma div ? et que je mette le chemin dans la base ?! et j'appelle le resultat dans cet include. Est ce bien ca ? Et au niveau securite, c'est pas super ?!
Quel demarche faudrait il que j'adopte pour plus de securite si c'est pas la bonne demarche ?

Dernière modification par pilaf (18-03-2010 17:41:34)

Hors ligne

#11 18-03-2010 19:23:51

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : include de page grace a un line dans une cellule de mysql

La fonction include se doit d'être dans le code. Et le chemin du fichier dans ta base pour ton exemple.

Pour plus de sécurité il faudrait qu'aucun chemin direct ne soit placé dans la base. On ne fait pas d'include de n'importe quoi.
Sinon il suffirait d'une faille dans ton code pour qu'un hackeur vienne mettre le chemin qu'il veut dans ta base à la place de ton enregistrement... Et là c'est la porte ouverte à tous tes fichiers.

Il faut toujours gérer les includes dynamiques grâce à une valeur de référence.
Exemple :

switch($page)
{
  case 'accueil' : include('page_accueil.php'); break;
  case 'news' : include('page_news.php'); break;
ect

Avec un code comme cela on n'inclut pas n'importe quelle page, uniquement les pages que l'on connait et donc qu'on autorise.

Hors ligne

#12 18-03-2010 22:52:28

pilaf
Membre
Inscription : 17-03-2010
Messages : 9

Re : include de page grace a un line dans une cellule de mysql

Merci de ta reponse, je comprends le principe de ce code pour la securite.
mais j'ai l'impression que le switch ne convient pas a ce que je veux faire car l'include est pour l'entete.
Je veux placer cet entete sur toute les pages en include. Mon soucis est que je suis en train de faire le site avec un template. Je ne peux donc pas mettre l'include dedans (j'ai vu que ce n'est pas possible). Il faut faire l'appel de l'include de index.php dans l'index.tpl. Et la je bloque. J'ai pas trouve comment ca fonctionne.
Tu pourrais me renseigner dans ce sens ?

Hors ligne

#13 18-03-2010 22:58:36

dionysos
Membre
Lieu : Montpellier
Inscription : 18-02-2010
Messages : 24

Re : include de page grace a un line dans une cellule de mysql

Y'a une erreur dans le code !
À la ligne 5.
Ce n'est pas « ect » mais « etc » !

<voice mode="Denisot">Désolé...</voice>

Hors ligne

#14 18-03-2010 23:05:08

pilaf
Membre
Inscription : 17-03-2010
Messages : 9

Re : include de page grace a un line dans une cellule de mysql

bonjour dionysos,
sympa ta reponse, au moins ca avance wink

Dernière modification par pilaf (18-03-2010 23:19:38)

Hors ligne

#15 19-03-2010 00:49:49

pilaf
Membre
Inscription : 17-03-2010
Messages : 9

Re : include de page grace a un line dans une cellule de mysql

merci de vos patience. j'ai change de solution, celle ci n'est pas adapte.:D

Dernière modification par pilaf (25-03-2010 03:10:58)

Hors ligne

Pied de page des forums