Du php dans SQL ?

Bonjour,
Voila j'ai codé un site dynamique avec le menu et les page qui se gére par SQL ( a partir de phpmyadmin )
J'ai donc 6 champs dont un qui se nomme " contenue " jusque la aucun soucis, sauf que j'aimerais coder une page en php et la mettre comme contenue. Le probléme est que quand j'insére <?php echo "bonjour"; ?> par exemple dans le champ contenue sa ne marche pas, rien ne s'affiche. Help me please !!

( contenue est de type text utf8_general_ci)

Merci
Configuration: Windows XP
Opera 9.64

6 réponses

  1. Modérateur
    Comment ça rien ne s'affiche ?
    Rien ne s'affiche où ?

    Si tu veux faire en sorte qu'en récupérant le code PHP dans la base il soit interprété tu peux utiliser eval mais attention à ce qu'il y a dans la base, ça peut être dangereux.
    0
    1. Ba j'ai la table pages et j'ai le champs contenue de type TEXT, et comme valeur j'aimerais mettre du php, mais il n'est pas interpréter une fois sur le site, rien ne s'affiche a part dans la source :
      <div id="contenue" align="center">
      <?php echo "test"; ?> </div>
      <div id="pied">

      les balise php ne font rien, j'aimerai que le code soi interpréter.
      MERCIIIIII
      0
      1. Modérateur
        Pour méler html et code php il faut fermer les balises php à chaque fois, comme tu le ferais si tu écrivait directement le code :
        <?php
        $cmde=' ?><html><head></head><body><?php echo "test"; ?></body><?php ';
        eval($cmde);
        ?>
        0
        1. ba c'est ce que j'ai fait la non ?
          <div id="contenue" align="center">
          <?php echo "test"; ?> </div>
          <div id="pied">
          0
          1. Modérateur
            Non, il faut fermer la balise php avant et la rouvrir après. Mais ce qui est peut-être encore mieux c'est de ne pas stocker ça dans la base, tu le fais uniquement à l'exécution :
            <?php
            $insert='<div id="contenue" align="center">
            <?php echo "test"; ?> </div>
            <div id="pied">';
            ?>

            Tu stockeras ainsi insert dans ta base :
            INSERT INTO matable VALUES($insert);

            Et tu le récupèreras ainsi :
            <?php
            $row=result(.....)  //Récupère le résultat de la sélection de "contenu" dans un tableau ou un objet
            exec(' ?>'.$row['contenu'].'?<php ');  //Ici tu fermes la balise php et tu la rouvres à la fin.
            ?>
            

            Ca devrait marcher comme ça mais j'ai pas essayé.
            0