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

Langage PHP Discussion :

Ma fonction PHP s'affiche dans le code source mais ne s'exécute pas


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut Ma fonction PHP s'affiche dans le code source mais ne s'exécute pas
    Bonsoir tout le monde !

    J'ai un problème avec une fonction toute simple de PHP mais apparemment, pas moyen de l'afficher dans ma page.
    Si vous regardez bien dans le code source, vous trouverez ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <div id="corps_news"><span class="corps_news2"><p><strong>01/09/10 - C'est la rentrée !</strong><span class="separation"></span><i></i></p></span><span class="contenu_news">
    <?php image_com('gauche', 'http://www.amatest.com/images/logo.png', 'Allez ! Debout les étudiants !'); ?>Bonjour/Bonsoir tout le monde ! C'est <strong>Rowmanow</strong> qui vous parle cette fois et pas pour rien dire (enfin ça reste à voir évidemment), c'est pour vous annoncer qu'après ces vacances chargées en déménagement, emménagement et aménagement, et accessoirement en recherche de travail, je suis de retour pour <strong>continuer le site internet !</strong><br />
    Donc voici le bout de PHP qui s'affiche dans le code source :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php image_com('gauche', 'http://www.amatest.com/images/logo.png', 'Allez ! Debout les étudiants !'); ?>
    Voici ma fonction image_com qui se trouve dans le fichier inc-func.php associé à cette page web :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function image_com($cote, $lien, $commentaire) {
    	echo '<div class="com_image_'.$cote.'"><a href="'.$lien.'" target="_blank"><img src="'.$lien.'" alt="image flottante" width="105px"></a>'.$commentaire.'</div>';
    	return;
    	}
    Comme vous pouvez le voir, je veux juste afficher une image via une fonction PHP mais pas moyen de la faire marcher ! Vous aurez une idée ?

    Merci d'avance !

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    c'est <?php pas <php?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    En effet mais même avec le <?php, ça ne marche pas... Vous pouvez vérifier mon code source, vous verrez la même chose...

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Est-ce que tu arrives a executer du PHP en dehors de ce problème ?

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Toute la page est du html appelé par du PHP... Donc bon... Tout marche sauf ça...

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Si tu as bien corrigé tous les <php?, ta syntaxe est bonne et fonctionne.

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Vu que ça marche pas, je vais alors expliquer un détail qui fera peut-être toute la différence.

    J'ai une interface pour ajouter des articles comme ça, via des formulaires simples. Lors de l'envoi du texte dans la base de données, il y a seulement un addslashes. Lors de l'affichage du contenu, j'ai mis un echo (normal), un nl2br et un stripslashes.

    Ca peut venir de là ?

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Non.
    Es-tu sur de voir des <?php dans le code source du navigateur quand tu consultes ta page en ligne ?

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Ben c'est seulement cette fonction qui s'affiche... Tout le reste marche...

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    ca ne répond pas a la question.

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Difficile de répondre... La page que je montre est celle qui est en ligne. En fait, je viens de faire un essai, si je mets le code directement dans la page source avec Dreamweaver, l'image s'affiche. Vous pouvez le voir maintenant sur le même lien. Mais quand je passe par le contenu de la base de données, ben, ça ne s'affiche que dans le code source...

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Franchement là... Je trouve pas de solution logique... Pourquoi dans le code source, on peut voir le php en brut mais ça ne s'affiche pas sur la page ? Et pourquoi le php ne se déclenche-t-il pas ?

    J'édite ce post pour montrer pluss de chose. Voici ce qu'on trouve dans mon fichier "news.php" côté HTML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <div id="corps_news"><?php afficher_news(); ?></div>
    <div id="test_footer"></div>

    Voici ma fonction "afficher_news" qui se trouve dans "inc-func.php" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    function afficher_news() {
    	extract($_GET,EXTR_OVERWRITE);
    	$reponse = mysql_query("SELECT * FROM newsv2 WHERE article='$article'");
    	$donnees = mysql_fetch_array($reponse);
    	echo nl2br(stripslashes('<span class="corps_news2"><p><strong>'.$donnees['date_publication'].' - '.$donnees['titre_news'].'</strong><span class="separation"></span><i>'.$donnees['consoles'].'</i></p></span><span class="contenu_news">'.$donnees['contenu'].'<span class="amanewseur"><p>News rédigée par : <span class="soulign">'.$donnees['amanewseur'].'</span></p></span></span>'));
    	return; }
    ?>
    Peut-être que ça pourrait vous aider...

  13. #13
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Est-ce que tu as un problème sur ton site en production ou est-ce que tu es en train de nous parler de ton logiciel de création ?

    Au passage : ta fonction afficher_news() ne protège pas les données ; ta requête est ouverte aux injections SQL.

  14. #14
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Pour la protection de "afficher_news" je suis au courant du problème mais là n'est pas la question.

    Je ne comprends pas ce qui gêne dans mes explications. Le problème se voit dans le code source ! Dans ma base de données, j'ai une table news avec un champ "contenu" de type TEXT. Là dedans, il y a ce fameux contenu avec la fonction php. Mais en passant par là, mon image ne s'affiche pas mais le code php s'affiche dans le code source. Si je mets le code php dans ma page via dreamweaver ou notepad++ (le logiciel importe peu) de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <div id="corps_news"><?php image_com(variables...); ?><?php afficher_news(); ?></div>
    <div id="test_footer"></div>
    A ce moment là, mon image s'affiche mais par contre, sur toutes les pages et pas au bon endroit alors que ma fonction est faite pour choisir l'image que je souhaite, avec le texte que je souhaite mais dans un article différent.

  15. #15
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    on peut voir le code html généré au final de ta page?

  16. #16
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    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
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta name="Description" content="Amatest est une communaut� de testeurs qui propose � la fois des tests �crits, des vid�o-tests ou m�me des dossiers sur l'univers des jeux vid�os.">
    <meta name="Keywords" content="amatest, amateurs, tests, video-tests, amavideos, amawalks, walkthrough communaut�, jeux vid�os, consoles, arcade, dreamcast, game boy, game boy color, game boy advance, game cube, game gear, master system, megadrive, nes, nintendo 64, nindendo ds, pc, mac, playstation, playstation 2, playstation 3, psp, playstation portable, sega saturn, super nes, wii, xbox, xbox360, dossier, rowmanow, lapuce, sora, nounours, matt, spartan 12, kenshikant, trikmoumoutte, pouah!">
    <meta name="Author" content="Rowmanow">
    <meta name="Publisher" content="1and1">
    <meta name="Copyright" content="�Copyright 2009 (Amatest). Tous les droits r�serv�s. Reproduction m�me partielle interdite sauf autorisation.">
    <meta name="Content-language" content="fr">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>News - C'est la rentrée !</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    <link rel="icon" type="image/png" href="images/favicon.png" />
    <script language="JavaScript" type="text/javascript" SRC="http://www.amatest.com/div.js"></script>
    </head>
     
    <body>
    <div id="site">
    <div id="fond_entete">
    	<div id="entete">
        	<div id="logo"><a href="http://www.amatest.com"><img src="images/logo.png" alt="Accueil"></img></a></div>
            <div id="icones_entete">
                <ul>
                <li class="ico"><a href="#">NES</a></li>
                <li class="ico"><a href="#">SNES</a></li>
     
                <li class="ico"><a href="#">N64</a></li>
                <li class="ico"><a href="#">GC</a></li>
                <li class="ico"><a href="#">Wii</a></li>
                <li class="ico"><a href="#">GB/GBC</a></li>
                <li class="ico"><a href="#">GBA</a></li>
                <li class="ico"><a href="#">DS</a></li>
     
              </ul>
              <ul>
                <li class="ico"><a href="#">MS</a></li>
                <li class="ico"><a href="#">MD</a></li>
                <li class="ico"><a href="#">SAT</a></li>
                <li class="ico"><a href="#">DC</a></li>
                <li class="ico"><a href="#">GG</a></li>
     
                <li class="ico"><a href="#">PC</a></li>
                <li class="ico"><a href="#">MAC</a></li>
                <li class="ico"><a href="#">ARC</a></li>
              </ul>
              <ul>
                <li class="ico"><a href="#">PS1</a></li>
                <li class="ico"><a href="#">PS2</a></li>
     
                <li class="ico"><a href="#">PS3</a></li>
                <li class="ico"><a href="#">PSP</a></li>
                <li class="ico"><a href="#">XBOX</a></li>
                <li class="ico"><a href="#">X360</a></li>
                <li class="ico"><a href="#">Iphone</a></li>
                <li class="ico"><a href="#">Autres</a></li>
     
              </ul>
          </div>
        </div>
    </div>
    	<div id="fond_page">
    	  <div id="menu_gauche">
    	    <div id="entete_menu_amatest"></div>
    				<div id="menu_amatest">
                		<ul>
     
                    	<li><a href="menu-news.php">News</a></li>
                    	<li><a href="menu-tests.php">Tests</a></li>
                    	<li><a href="menu-amavideos.php">Amavidéos</a></li>
                    	<li><a href="menu-amawalks.php">Amawalks</a></li>
                    	</ul>
            		</div>
                <div id="entete_menu_communaute"></div>
     
    				<div id="menu_communaute">
                		<ul>
                    	<li><a href="#">Soluces et Astuces</a></li>
                    	<li><a href="#">Fanfics</a></li>
                    	<li><a href="#">Humour du web</a></li>
                    	<li><a href="#">AMV</a></li>
                        <li><a href="#">Extraits</a></li>
     
                    	</ul>
            		</div>
                 <div id="entete_menu_apropos"></div>
                 	<div id="menu_apropos">
                		<ul>
                    	<li><a href="#">L'équipe</a></li>
                    	<li><a href="#">Contact</a></li>
                    	<li><a href="http://amatest.xooit.fr/" target="_blank">Forum</a></li>
     
                    	<li><a href="partenaires.php">Partenaires</a></li>
                    	</ul>
            		</div>
          </div><div id="news">
          <span class="image_news_entete"></span>
     
    <div id="corps_news"><span class="corps_news2"><p><strong>01/09/10 - C'est la rentrée !</strong><span class="separation"></span><i></i></p></span><span class="contenu_news"><?php image_com("gauche", "http://www.amatest.com/images/logo.png", "Allez ! Debout les étudiants !"); ?> Bonjour/Bonsoir tout le monde ! C'est <strong>Rowmanow</strong> qui vous parle cette fois et pas pour rien dire (enfin ça reste à voir évidemment), c'est pour vous annoncer qu'après ces vacances chargées en déménagement, emménagement et aménagement, et accessoirement en recherche de travail, je suis de retour pour <strong>continuer le site internet !</strong><br />
     
    <br />
    Avec cette news, j'en profite pour tester une nouvelle manière de mettre une image en commentaire. Bon, je vous rassure, vous ne verrez pas la différence chez vous (sauf en cas d'erreurs de programmation) car ça concerne surtout les newseurs. J'espère en tout cas que vous apprécierez les différentes news que nous mettrons prochainement et <strong>n'hésitez pas à nous faire part de vos commentaires</strong> en dessous de celles-ci et sur le forum.<br />
    <br />
    Bah j'en profite aussi (comme par hasard me dira-t-on) pour vous inviter à aller vous inscrire sur le forum <a href="http://amatest.xooit.fr" target="_blank">à cette adresse</a>. Avec plus de 7000 messages et une vingtaine de membres actifs, papotant sur des dizaines de topiques passionnants, vous trouverez sans soucis votre compte sur votre <strong>passion</strong> qui est <strong>le jeu vidéo</strong> !<br />
     
    <br />
    En attendant, jouez bien et bonne visite sur notre site !<span class="amanewseur"><p>News rédigée par : <span class="soulign">Rowmanow</span></p></span></span></div>
    <div id="test_footer"></div>
     
    <span class="image_commentaires_entete"></span>
    <div id="corps_news"><p><span class="compteur_commentaires">Il y a actuellement <strong>2</strong> commentaires. <u><a href="commentaires-news.php?id_news=43">Ajouter un commentaire.</a></u></span></p><p><span class="separation_commentaires"></span></p><span class="marge_commentaires"><p><strong>Nounours</strong> le 01/09/2010 à 21:49:44</p><p>Merci :D</p></span><p><span class="separation_commentaires"></span></p><span class="marge_commentaires"><p><strong>matt</strong> le 01/09/2010 à 22:14:42</p><p>Allez, au boulot tout le monde!</p></span></div>
     
    <div id="test_footer"></div>
     
     
    </div>
     
     
    </div>
              <div id="footer">
        	</div>
            </div>
    </body>
    </html>

  17. #17
    Membre habitué
    Inscrit en
    Juillet 2009
    Messages
    156
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 156
    Points : 160
    Points
    160
    Par défaut
    un truc tout bete pour essayer, a la place de ta fonction, tu peux mettre

  18. #18
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="corps_news"><span class="corps_news2"><p><strong>01/09/10 - C'est la rentrée !</strong><span class="separation"></span><i></i></p></span><span class="contenu_news"><?php echo 'toto'; ?> Bonjour/Bonsoir tout le monde ! C'est <strong>Rowmanow</strong> qui vous parle cette fois et pas pour rien dire (enfin ça reste à voir évidemment), c'est pour vous annoncer qu'après ces vacances chargées en déménagement, emménagement et aménagement, et accessoirement en recherche de travail, je suis de retour pour <strong>continuer le site internet !</strong><br />
    Ca donne ça dans le code source (j'ai juste choisi la partie concernée) et rien ne s'affiche sur ma page...

  19. #19
    Membre habitué
    Inscrit en
    Juillet 2009
    Messages
    156
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 156
    Points : 160
    Points
    160
    Par défaut
    ta page est bien en .php, tu fais bien tes includes de fichiers externe si tu en as, et tu ne change dans aucun fichier ton "content-type" ???

    genre un text/plain a la con qui trainerait ou autre...

  20. #20
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 90
    Points : 36
    Points
    36
    Par défaut
    Ma page est en php, j'ai bien des includes qui marchent puisque la page marche (sauf ça), et le content-type ne change jamais...

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [XL-2007] VBA le code compile mais ne s'exécute pas
    Par daffy85 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 05/05/2014, 10h41
  2. Réponses: 5
    Dernier message: 18/01/2010, 10h13
  3. [EasyPHP] Du code PHP s'affiche dans ma page
    Par psgman113 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 20/03/2007, 10h29
  4. Réponses: 15
    Dernier message: 23/01/2007, 15h27
  5. Problème le code PHP s'affiche dans le navigateur
    Par Christophe LUCET dans le forum Langage
    Réponses: 4
    Dernier message: 20/12/2006, 14h12

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