Du php dans SQL ?

lirycs78 Messages postés 101 Date d'inscription   Statut Membre -  
Yoan Messages postés 11905 Statut Modérateur -
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. Yoan Messages postés 11905 Statut Modérateur 2 356
     
    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
  2. lirycs78 Messages postés 101 Date d'inscription   Statut Membre 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
  3. lirycs78 Messages postés 101 Date d'inscription   Statut Membre 1
     
    up
    0
  4. Yoan Messages postés 11905 Statut Modérateur 2 356
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. lirycs78 Messages postés 101 Date d'inscription   Statut Membre 1
     
    ba c'est ce que j'ai fait la non ?
    <div id="contenue" align="center">
    <?php echo "test"; ?> </div>
    <div id="pied">
    0
  7. Yoan Messages postés 11905 Statut Modérateur 2 356
     
    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