Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

balises <?

8 views
Skip to first unread message

alainL

unread,
Dec 13, 2011, 6:02:48 AM12/13/11
to
Bonjour,

Ce code marchait sur le site distant et sur mon vieil EasyPHP.
Mais sur une nouvelle installation (Easy ou Wamp) il n'est pas
interprété il me semble

<?php include ("medaillons.php");
?>
(Ce fichier détermine le nom (aléatoire) d'une image.)
-------------------------------------------------------------

<p><img src='Images/<?=$image[$i] ?>.png' height="250" align='right'
hspace='150' alt= '<?= $titre[$i] ?>' title= '<?= $titre[$i]
?>'............

Ayant lu que <?php devait être préféré à <? je me demande si le code
appelant l'image est correct, mais après plusieurs essais générant des
erreurs j'envoie un SOS !
merci à l'avance
--
AlainL


Thomas Mlynarczyk

unread,
Dec 13, 2011, 7:42:46 AM12/13/11
to
alainL schrieb:

> <p><img src='Images/<?=$image[$i] ?>.png' height="250" align='right'
> hspace='150' alt= '<?= $titre[$i] ?>' title= '<?= $titre[$i]
> ?>'............

Ca ne marche pas si short_open_tag = off dans php.ini
(http://php.net/manual/fr/ini.core.php). A partir de PHP 5.4.0 la
notation <?= est toujours disponible.

Thomas

--
Ce n'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!
(Coluche)

alainL

unread,
Dec 13, 2011, 8:27:51 AM12/13/11
to
Le 13/12/2011 13:42, Thomas Mlynarczyk a écrit :
> alainL schrieb:
>
>> <p><img src='Images/<?=$image[$i] ?>.png' height="250" align='right'
>> hspace='150' alt= '<?= $titre[$i] ?>' title= '<?= $titre[$i]
>> ?>'............
>
> Ca ne marche pas si short_open_tag = off dans php.ini
> (http://php.net/manual/fr/ini.core.php). A partir de PHP 5.4.0 la
> notation <?= est toujours disponible.
>
> Thomas
>
wamp m'a installé PHP 5.3.0 J'ai trouvé dans php.ini :
short_open_tag : default value : on
Developpement value : off
Production value : off

C'est bon ça ?
--
AlainL

http://autourdalos.fr

Thomas Mlynarczyk

unread,
Dec 13, 2011, 11:43:54 AM12/13/11
to
alainL schrieb:

> wamp m'a installé PHP 5.3.0 J'ai trouvé dans php.ini :
> short_open_tag : default value : on
> Developpement value : off
> Production value : off
>
> C'est bon ça ?

Si c'est comme ça:

...
; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
short_open_tag = Off
...

Il faut changer la dernière ligne en
short_open_tag = On
et peut-être redemarrer le serveur.

(Les lignes qui commencent en ; sont des commentaires et sont donc
ignorées par PHP.)

Mais la meilleure solution c'est d'utiliser toujours <?php et <?php echo
pour être sûr que le code fonctionnera sur tous les serveurs.

alainL

unread,
Dec 13, 2011, 1:40:57 PM12/13/11
to
Le 13/12/2011 17:43, Thomas Mlynarczyk a écrit :
> alainL schrieb:
>................
>
> Mais la meilleure solution c'est d'utiliser toujours <?php et <?php echo
> pour être sûr que le code fonctionnera sur tous les serveurs.
>
> Thomas
>
Mais je n'ai pas réussi à modifier ce code
<p><img src='Images/<?=$image[$i] ?>.png'
- - - - - - - - - - -
<?php= .... n'est pas reconnu comme code php
<?php = .... parse erreur
et le point-virgule avant ?> n'arrange rien...

Mais le plus étonnant est que le code fonctionne en local avec EasyPHP
(apache 1.3.27 et php 4.3.3) sous XP ainsi qu'en distant.

--
AlainL

http://autourdalos.fr

Denis Beauregard

unread,
Dec 13, 2011, 1:44:12 PM12/13/11
to
Le Tue, 13 Dec 2011 19:40:57 +0100, alainL <jaraile...@gmail.com>
écrivait dans fr.comp.lang.php:

>Le 13/12/2011 17:43, Thomas Mlynarczyk a écrit :
>> alainL schrieb:
>>................
>>
>> Mais la meilleure solution c'est d'utiliser toujours <?php et <?php echo
>> pour être sûr que le code fonctionnera sur tous les serveurs.
>>
>> Thomas
>>
>Mais je n'ai pas réussi à modifier ce code
><p><img src='Images/<?=$image[$i] ?>.png'


<p><img src='Images/<?php echo $image[$i]; ?>.png'

ou (que je préfère)

<p><img src='Images/<?php echo $image[$i].".png"; ?>'


Denis

Thomas Mlynarczyk

unread,
Dec 13, 2011, 3:32:42 PM12/13/11
to
Denis Beauregard schrieb:
> <p><img src='Images/<?php echo $image[$i]; ?>.png'
>
> ou (que je préfère)
>
> <p><img src='Images/<?php echo $image[$i].".png"; ?>'

ou encore

<img src="Images/<?php echo "$image[$i].png" ?>" alt="...">

alainL

unread,
Dec 13, 2011, 3:49:10 PM12/13/11
to
Le 13/12/2011 21:32, Thomas Mlynarczyk a écrit :
> <img src="Images/<?php echo "$image[$i].png" ?>" alt="...">

J'avais short_open_tag = Off par défaut dans php.ini
Je l'ai mis à on et ça marche.

Mon code distant est donc tjs avec <?= . Quelle incidence cela peut-il
avoir ?

Et pourquoi ce paramètre par defaut dans wamp (et sans doute dans
EasyPHP dernières versions) Ma vieille version d'Easy installée sur mon
XP ne faisait pas tant de manières :-)))

Merci pour tout et bonne fin de soirée.

--
AlainL

http://autourdalos.fr

Thomas Mlynarczyk

unread,
Dec 13, 2011, 6:21:02 PM12/13/11
to
alainL schrieb:

> J'avais short_open_tag = Off par défaut dans php.ini
> Je l'ai mis à on et ça marche.
>
> Mon code distant est donc tjs avec <?= . Quelle incidence cela peut-il
> avoir ?

Si jamais tu changes d'hebergeur ou si quelqu'un d'autre utilise ton
code, ce problème pourrait reapparaître. Et on n'a pas toujours la
possibilité de modifier php.ini.

> Et pourquoi ce paramètre par defaut dans wamp (et sans doute dans
> EasyPHP dernières versions) Ma vieille version d'Easy installée sur mon
> XP ne faisait pas tant de manières :-)))

La valeur par défaut de short_open_tag à changé depuis PHP 5.3.0. Avant,
c'etait On et maintenant c'est Off. À partir de PHP 5.4.0, la notation
<?= est indépendent de short_open_tag et fonctionne toujours. Mais il y
aura encore du temps avant que tout le monde utilisera PHP 5.4.0+. Donc,
il est fortement conseillé d'utiliser toujours "<?php" et "<?php echo "
au lieux de "<?" et "<?=".
0 new messages