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.
    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
      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);
        ?>
        1. ba c'est ce que j'ai fait la non ?
          <div id="contenue" align="center">
          <?php echo "test"; ?> </div>
          <div id="pied">
          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é.