Problème avec le passage de la version 5.0.3 vers 5.1

stevens47
Invité n'ayant pas de compte PHPfrance

05 mars 2006, 18:38

Bonjour,

J'ai un problème depuis que mon hébergeur a changé de version PHP, j'ai ce morceau de code qui a l'origine fonctionné trés bien, ne fonctionne plus.
<?
$nb=mt_rand(0,1);
if ($nb==0){
print "document.write('<script language=javaScript src=http://www.X></script>');"; }
else
{
print "document.write('<script language=javaScript src=http://www.Y></script>');"; }
?>
Quelqu'un a t-il une idée de la modification à faitre pour le rendre compatible avec la nouvelle version ?

Merci d'avance

Mammouth du PHP | 19672 Messages

05 mars 2006, 19:09

À tout hasard, remplace "<?" par "<?php" : il est possible que la nouvelle configuration n'accepte pas les short_open_tag.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 3 Messages

05 mars 2006, 19:19

Non, cela ne régle pas le problème.
je ne comprends pas ce qui se passe car quand j'appelle un des scripts directement sur une page, il fonctionne bien.

Sur ce script, je veux faire le choix entre deux scripts mais cela ne fonctionne plus...

Stevens

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

05 mars 2006, 20:28

[le] code qui a l'origine fonctionnait trés bien, ne fonctionne plus.
Qu'entends-tu par "ne fonctionne plus" ? As-tu un message d'erreur ? Si tu regardes le source de la page, est-ce que le tag <script> est présent ?

Comme l'a dit Cyrano, utiliser les vrais tags php plutôt que les tags courts permet de ne jamais se poser la question de savoir s'ils sont autorisés ou non. D'ailleurs, il y a de bonnes chances pour qu'ils disparaissent dans PHP 6, ça te fait économiser sur ton prochain topic :lol:

À part ça, tu devrais essayer d'aérer un peu ta syntaxe, c'est assez difficile à lire tu ne trouves pas ?
<?php

$nb = mt_rand(0, 1);

if (!$nb)
{
	print "document.write('<script language=javaScript src=http://www.X></script>');";
}
else
{
	print "document.write('<script language=javaScript src=http://www.Y></script>');";
}
?>

Petit nouveau ! | 3 Messages

05 mars 2006, 20:58

Les modifications apportées n'ont pas résolu le problème.
Merci de votre intervention

Petit nouveau ! | 3 Messages

05 mars 2006, 21:02

Aucun message d'erreur...
Le script est bien présent dans le source de la page

Si j'appelle directement le script PHP, il s'affiche mais comme je dois l'insérer dans plusieurs types de pages (php, html..), je suis obligé de passer par un script qui appelle ce code directement..