Bonjour,

Ce lien vous semble-t-il correct ?

echo '<a href="index.php?numdoor=',$north[$piece],'"><img src="door.png"/></a>';

J'ai pu voir également un point précédant le $.

Je souhaite appeler une page dont le numéro de la porte ou de la pièce s'affichera dans la barre du navigateur.

Merci !
echo '<a href="index.php?numdoor='.$north[$piece].'"><img src="door.png"/></a>';

Remplace la , par un . et test, comme ça tu seras fixé Smiley cligne
Modifié par Tintin75 (31 Jan 2016 - 19:27)
Administrateur
Cela revient au même dans cette situation. La virgule sépare les différentes chaînes à traiter une par une par echo tandis que le point concatène (réunit) les chaînes en une seule avant de les passer à echo.
En général la virgule est légèrement plus rapide en traitement car il y a moins d'opérations à réaliser.
Merci je viens d'apprendre quelques choses, je pensais que la , ne passait pas.

Merci pour le cours Smiley smile
Merci beaucoup pour ces remarques pertinentes. Je viens d'apprendre quelque chose.

Par contre, j'ai un souci avec mon $enigmes. C'est un jeu du labyrinthe. J'ai créé mes tableaux directionnels plus un tableau éngimes $enigmes=array ();

le code :
$piece = 0;
if(isset($_GET["numpiece"])) { 
$piece = $_GET["numpiece"];
}
if($sud[$piece] !== -1) {
echo '<a href="../../index.php?numpiece=',$sud[$piece],'">SUD<img src="..."/></a>';


isset pour déterminer si ma variable est définie...

Par contre, je ne sais pas où mettre $enigmes. Pour trouver la bonne porte, le joueur sera aidé d'une énigme. J'ai fait des tentatives mais qui n'ont rien données. Pour informer le joueur qu'il est dans la pièce X, je dois mettre un texte du genre "vous êtes dans la pièce x" :
echo "Vous êtes dans la pièce x $piece[$piece];


Merci de votre aide.
Jencal c'est pas beau de se moquer d'un administrateur, c'est pas beau Smiley lol Le coup de la , c'est la première de ma vie que je vois ça, j'ai toujours vue des . L'avantage si on se trompe de touche on c'est que ça passe Smiley cligne
Modifié par Tintin75 (01 Feb 2016 - 14:03)
alors la, je ne me moque pas du tout Smiley langue

au contraire, je connaissais pas du tout l'utilisation de la virgule dans ce cas !

Dans mon "smiley" le king en rouge c'est @dew Smiley biggrin et nous autres (surtout moi) le remercions Smiley langue
Modifié par JENCAL (01 Feb 2016 - 14:16)
Bonjour messieurs-dames,

A titre informatif:
Contrairement au point qui est un caractère de concaténation, la virgule est un caractère de juxtaposition.

La concaténation et la juxtaposition fonctionnent différemment mais aboutissent à un même résultat : l'affichage d'un ensemble de donnée.
La concaténation consiste à mettre bout-à-bout une série d'informations lorsque la juxtaposition consiste à les placer côte-à-côte (cette mécanique est mieux expliquée que je n'en suis capable).
Cette mécanique qui ne se différencie pas que par les termes, amène à un gain (infime) en vitesse de traitement.

Toutefois il est très important de prendre ceci en considération. Le caractère de juxtaposition peut-être utilisé à la place du caractère de concaténation uniquement dans le cas de la commande echo.

Ainsi
echo 'Mon texte et sa ',$variable ; /* fonctionne !*/

$output = 'Mon texte et sa ',$variable;
echo $output; /* ne fonctionne pas !*/


Classement d'une sortie de texte de la plus rapide à la plus lente:

/*1er:  */ echo $une,$chaine,$justaposee;
/*2eme: */ echo $une.$chaine.$concatenee;
/*3eme: */ echo "$une$chaine$translitee";


C'est tout... pour le moment.
Modifié par Greg_Lumiere (20 Feb 2016 - 07:59)
De fait, le passage de paramètres à la fonction écho PHP, séparés par des virgules, est similaire à ce que l'on connaît en Java (par exemple) avec la méthode println(v1,v2,v3), plus efficace que println(v1 plus v2 plus v3).
Dans le premier cas, les objets sont lus séquentiellement et transférés dans le flux de sortie.
Dans le second cas, une chaîne alphanumérique est reconstruite à chaque ajout d'objet puis sérialisée.
La différence en temps processeur est infime pris unitairement, mais sur de nombreux appels de ce type l'impact performances et mémoire peut être significatif.
Le Java m'est complètement étranger mais la conclusion est tout à fait vraie.

Les résultats des benchmaks convergent en ce sens.
Bref, à mon niveau pour ne pas me planter et faire le malin, je reste sur le .

Merci de ces explications, c'est toujours intéressant d'apprendre. Smiley murf
Merci pour toutes ces informations très utiles.

Mon problème est que je n'arrive pas à lier ma page index.php? à mon répertoire Projet2.
Je m'explique, normalement en cliquant sur mon répertoire (serveur local) situé dans le listing des fichiers Index of/ , je devrais pouvoir ouvrir d'autres fichiers comme mon index.php? etc. Ces fichiers apparaissant au fur et à mesure dans l'URL.

Je teste mon programme php... Dans l'URL, je devrais voir apparaître ceci : http:192.168......./Projet2/index.php?numpiece= sauf que j'ai une erreur serveur qui s'affiche si je teste sur Chrome ou page blanche sur Firefox. Seule cette partie s'affiche : http://192.168......./Projet2/

Voici mon lien $piece = 0;
if(isset($_GET["numpiece"])){
    	$piece = $_GET["numpiece"];
}
if($nord[$piece] !== -1){
echo '<a href="index.php?numpiece="'.$nord[$piece].'">NORD<img src="door.png"/></a>';


J'ai modifié mon lien... Rien n'y fait.
Si vous aviez une petite idée. Merci