Code php qui na s'affiche pas...

  • Auteur de la discussion Auteur de la discussion Pan
  • Date de début Date de début
Bonjour,

Voici un extrait de code que j'ai inséré dans une de mes pages :
Code:
<tr align="center" valign="top">
    <LOOP NAME="show_images">
      
  <td><a href="{large_image_page}?{number}" target="picture" onClick="window.open('','picture','toolbar=0,location=0,directories=0,status=yes,menubar=0,scrollbars=yes,resizable=yes,width=500,height=550,titlebar=yes')">
<img src="{image_url}/{name}" alt="{name}" border="0" title="{name}"></a><br />
  
  <?php
 $nom = "{name}";
 echo  "$nom";

        ?>
  </td>
    </LOOP NAME="show_images">
    </tr>
Au final, le code source est le suivant :

Code:
<td><a href="window.php?0" target="picture" onClick="window.open('','picture','toolbar=0,location=0,directories=0,status=yes,menubar=0,scrollbars=yes,resizable=yes,width=500,height=550,titlebar=yes')"><img src="/galleries/images/alex0.jpg" alt="alexia0.jpg" border="0" title="alex0.jpg"></a><br />
  
  <?php
 $nom = "alex0.jpg";
 echo  "$nom";

        ?>
  </td>
    
      
  <td><a href="window.php?1" target="picture" onClick="window.open('','picture','toolbar=0,location=0,directories=0,status=yes,menubar=0,scrollbars=yes,resizable=yes,width=500,height=550,titlebar=yes')"><img src="/galleries/images//chiens0.jpg" alt="chiens0.jpg" border="0" title="chiens0.jpg"></a><br />
  
  <?php
 $nom = "chiens0.jpg";
 echo  "$nom";

        ?>
  </td>

Je ne comprends pas pourquoi ma variable $nom n'est pas affichée par "echo"...
Pouvez vous me dire quelles pourraient être les causes.
Merci :cry:
 
Test :
<?php
$nom = "chiens0.jpg";
echo "tete". $nom;
?>

Pour voir si ta variable contient bien une valeure.
 
Ben y a toujours rien qui s'affiche.

Est-ce que le fichier doit impérativement ne nommer truc.php car le mien est nommé truc.html ?
 
oui les parsers PHP n'interprète généralement que les extensions php, phpX ou phtml... Jamais les fichiers .html
 
Pan a dit:
Ben y a toujours rien qui s'affiche.

Est-ce que le fichier doit impérativement ne nommer truc.php car le mien est nommé truc.html ?

euh oui ca aide ... ca sert à ca les premières pages des bouquins, évitez de se prendre la tete quinze jours avec ce genre d'erreurs :)
 
Mon fichier est un fichier html avec du code php dedans...

De toutes les façons ça ne fonctionne pas nom plus avec l'extension .php et mon fichier est en 755...
 
1 - l'attribut du fichier n'a rien a voir avec l'interprétation
2 - Un navigateur lit le html.
3 - Un serveur parse le php et envoi du html au navigateur

Donc, savoir déjà si ton serveur accepte le php, puis faire des fichier en php afin qu'ils soit en premier lieu parser avant d'être envoyé.
 
Grantome a dit:
1 - l'attribut du fichier n'a rien a voir avec l'interprétation
8O Faux, la majorité des hébergeur ne font passer que les pages .php dans le parser PHP, histoire de ne pas charger inutilement le server avec des pages HTML qui n'ont pas besoin d'être interprétées.
 
Pan a dit:
Mon fichier est un fichier html avec du code php dedans...

De toutes les façons ça ne fonctionne pas nom plus avec l'extension .php et mon fichier est en 755...

euh ton serveur sait décoder le php ?
 
vous devriez avoir l'habitude... il est surement comme 99% des membres, il a un espace sur free...
 
haltospam a dit:
vous devriez avoir l'habitude... il est surement comme 99% des membres, il a un espace sur free...

Free sait parfaitement lire le PHP

Au vu de tes réponses, je me demande pk tu viens perdre ton temps ici...
 
Au faite tu déclare tes revenus publicitaire au fisc ?
Aller si tu reflechi avant ton prochain post je leur ferai pas de courrier
 
haltospam a dit:
Au faite tu déclare tes revenus publicitaire au fisc ?
Aller si tu reflechi avant ton prochain post je leur ferai pas de courrier

C'est sur qu'au vu de ton site, tu n'as pas grand chose à déclarer :) ah voui c vrai... monsieur parle, parle, mais affiche rien dans son profil :)
 
J'vais envoyer un courrier quand meme :) On sait jamais :-D sinon ce bouquin ? Aller truc et astuce du jour <b> bééééééééé ca sert a faire du gras !!! ouhouuu....
 
de rien, mais bon 40.000 membres 500.000 posts dont 80% servent à rien j'ai encore du boulot :( j'désespere pas
 
c.a.d ?
même pas tete ??
ou bien c'est le contenu de ta variable qui ne s'affiche pas ?

Non y rien qui s'affiche...
Je ne suis pas chez Free mais chez ovh, mes autres fichiers en php fonctionnent
 
ok tu 1 scrtipt PHP dans lequel les echo n'affichent rien?

si tu mets un <? phpinfo(); ?> au debut du fichier ?
 
Ok je l'ai mis après <body> et... rien.

<? phpinfo(); ?> apparait dans le source...
 
Salut,

Si tu veux que tes fichiers HTML soit interpreté en php il faut faire un .htaccess ou modifier la conf de apache

<Files *.html>
ForceType application/x-httpd-php
</Files>


Ca devrait mieux marcher :)
 
Non mais mes fichiers php fonctionnent normalement (j'ai notamment un forum phpbb sur ce site).
J'ai un souci sur CE fichier.

Je ne vois pas où est le pb...
 
Ton fichier est bien en html?

Si c'est le cas il faut que tu dises a apache qu'il faut qu'ils les interprete comme si c'était du PHP. Sinon il affichera toujours ton script dans le code source.
 
Non j'ai conservé l'extension en php mais ça ne change rien.

Est ce que dans le fichier de config on peut bloquer l'affichage de echo ?
 
Pan a dit:
Est ce que dans le fichier de config on peut bloquer l'affichage de echo ?

Non, dans ton cas, ton fichier n'est pas du tout interprété.
- soit ton fichier n'est pas vu comme un php (regardes les extention des fichier qui foncionnent et mets la même).
- soit tu est dans un répertoire qui n'est pas "vu" par le parser PHP (mets ton ficher à côter des autres pour voir).
 
Est-ce que la source de ton php s'affiche dans le code source de ta page?
oui tout le code. La seule chose qui fonctionne c'est comme je l'ai dis plus haut dans

Code:
<?php
 $nom = "{name}";
 echo $nom;
?>

name (qui est renseigné plus haut) prend bien la valeur (le nom d'une image) ce qui donne par exemple

Code:
<?php
 $nom = "alex0.jpg";
 echo $nom;
?>
par exemple
 
lupuz a dit:
Grantome a dit:
1 - l'attribut du fichier n'a rien a voir avec l'interprétation
8O Faux, la majorité des hébergeur ne font passer que les pages .php dans le parser PHP, histoire de ne pas charger inutilement le server avec des pages HTML qui n'ont pas besoin d'être interprétées.

Tu peux développer, car je ne vois pas le rapport entre l'attribut d'un fichier et le fait de pouvoir ou non le parser... :roll:
 
Non, dans ton cas, ton fichier n'est pas du tout interprété.
- soit ton fichier n'est pas vu comme un php (regardes les extention des fichier qui foncionnent et mets la même).
- soit tu est dans un répertoire qui n'est pas "vu" par le parser PHP (mets ton ficher à côter des autres pour voir).

L'extension est bonne et le fichier est placé dans un dossier où il y a déjà des fichiers php qui fonctionnent
 
Rectification lupuz dans un autre fichier php du même dossier j'ai le même problème...
 
Grantome a dit:
lupuz a dit:
Grantome a dit:
1 - l'attribut du fichier n'a rien a voir avec l'interprétation
8O Faux, la majorité des hébergeur ne font passer que les pages .php dans le parser PHP, histoire de ne pas charger inutilement le server avec des pages HTML qui n'ont pas besoin d'être interprétées.

Tu peux développer, car je ne vois pas le rapport entre l'attribut d'un fichier et le fait de pouvoir ou non le parser... :roll:

Les conf apache de ce type :
ForceType application/x-httpd-php .php
Sont là pour ca...
et chez les hébergeurs mutualisés, il est rare d'avoir un règle :
ForceType application/x-httpd-php .html

Après, il est toujours possible de contourner avec des htaccess et faire interprété n'import quelle extention.
mais vu que pan galère, j'essayes de faire simple...
 
Pan a dit:
Rectification lupuz dans un autre fichier php du même dossier j'ai le même problème...
ok alors quel est le point en commun de ces 2 fichiers ?
Y a-t-il des fichiers php interprétés dans ce rép ?
 
Re-rectification le ça fonctionne dans le 2e fichier (désolé)

Je n'ai que deux fichiers dans ce rep un fonctionne l'autre non.
Les différences ? Un comporte beaucoup de code html (templates) l'autre qui fonctionne est beaucoup plus épuré.

De là à dire que le code source du gros fichier pose problème...
Je suis dessus depuis cet après midi mais je ne vois pas comment du html peut poser un souci à un bloc de code php !
 
Bon je vais laisser tomber pour l'instant la nuit porte conseil en tout cas merci beaucoup ;)
 
lupuz a dit:
Grantome a dit:
lupuz a dit:
Grantome a dit:
1 - l'attribut du fichier n'a rien a voir avec l'interprétation
8O Faux, la majorité des hébergeur ne font passer que les pages .php dans le parser PHP, histoire de ne pas charger inutilement le server avec des pages HTML qui n'ont pas besoin d'être interprétées.

Tu peux développer, car je ne vois pas le rapport entre l'attribut d'un fichier et le fait de pouvoir ou non le parser... :roll:

Les conf apache de ce type :
ForceType application/x-httpd-php .php
Sont là pour ca...
et chez les hébergeurs mutualisés, il est rare d'avoir un règle :
ForceType application/x-httpd-php .html

Après, il est toujours possible de contourner avec des htaccess et faire interprété n'import quelle extention.
mais vu que pan galère, j'essayes de faire simple...



Ok....

Tu confond attribut de fichier et extension... :wink:
 
Grantome a dit:
Ok....

Tu confond attribut de fichier et extension... :wink:

oui, désolé.
Vu que le reste de la convrsation parlait des extentions, j'ai cru que tu y faisais référence toi aussi.
 
Mon template fait appel à un .htaccess qui est compilé.
C'est un fichier qui permet d'afficher une gallerie.

Sans doute ce .htaccess pose un souci. Je vais acheter la licence (qqs euros) pour voir si j'ai toujours le même problème...
 
Bonjour,

Bon j'ai acheté la licence mais rien ne fonctionne toujours, je donne le code source avant de me fait harakiri...

Code:
<html>
  <head>
    <title>{txt_script_name} {txt_script_version}</title>
    <meta http-equiv="Content-Type" content="text/html; charset={txt_charset}" />
    <style type="text/css">
    <!--

      h2, p, body, td {
          font-family:Arial, Helvetica, Sans-serif;
          }

      #poweredby {
          text-align:center;
      }

    -->
    </style>
  </head>

  <body>
    <h2>{txt_picture_gallery}</h2>
    <p align="center">

    <IF NAME="prev_page">
      <!--<span style="font-weight:bold;">&raquo;&nbsp;<a href="./{script_name}">Start</a></span> &nbsp;&nbsp;&nbsp;-->
      <span style="font-weight:bold;">&raquo;&nbsp;<a href="./{script_name}?{prev}">{txt_previous_picture}</a></span>
    </IF NAME="prev_page">

    &nbsp;&nbsp;&nbsp; {currentpage}/{allpages} &nbsp;&nbsp;&nbsp; <!--({txt_number_of_pictures}: {allpictures}) &nbsp;&nbsp;&nbsp;-->

    <IF NAME="next_page">
      <span style="font-weight:bold;">&raquo;&nbsp;<a href="./{script_name}?{next}">{txt_next_picture}</a></span>
    </IF NAME="next_page">

  </p>

  <p align="center">
    <span style="font-weight:bold;">
    {txt_pages}:
      <LOOP NAME="page_direct"><a href="./{script_name}?{link}"> {page} </a>&nbsp;</LOOP NAME="page_direct">
    </span>
  </p>

  <LOOP NAME="show_table">
    <table align="center">
    {tablecontent}
    </table>
  </LOOP NAME="show_table">

  <p><?php
 $nom = "texte a afficher";
 echo $nom;
?></p>

  <p align="center"><a href="javascript:window.close()">{txt_close_window}</a></p>
  <!--<p align="center"><a href="./{script_name}">{txt_thumbnails_overview}</a></p>-->
  

</body>
</html>
Je tente d'afficher le echo

Merci pour vos conseils
 
Le problème ne vient pas de ce script.

Par contre, le reste de la page resemble à un template....
 
Bonjour,

Quelle extention tu as donné à ton fichier à l'enregistrement ?

fichier.html ou fichier.php ?
Si c'est fichier.html même si dans ton doctype tu indiques php, ça ne le fait pas.
Par contre si tu le nommes fichier.php et que ton doctype indique html, ça le fait.

Je pense que tu dois avoir à l'affichage de ta page une ligne au milieu de ton template : <?php$nom = "texte a afficher";echo $nom;?>
car le php n'est pas interprété...
 
En fait il semble que pour afficher ce code php il faut qu'il soit placé dans un place holder { } mais c'est un truc que je ne connais pas...
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut