JeuWeb - Crée ton jeu par navigateur
[Résolu] Souci d'affichage d'un personnage proche - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Résolu] Souci d'affichage d'un personnage proche (/showthread.php?tid=3311)

Pages : 1 2


[Résolu] Souci d'affichage d'un personnage proche - Rouge - 19-11-2008

Bonjour,
je n'arrive pas à localiser le soucis dans ce script. Le but étant de faire apparaitre les noms de tous les persos présents à 1 case autour du joueur:

Code PHP :
<?php
session_start
();
$id = $_SESSION['id'];
include (
"connexion.php");
include
'verif_vie.php';
$requete = mysql_query("SELECT posx, posy FROM membres WHERE id = $id;");
$rsa= mysql_fetch_assoc ($requete);
$posx = $rsa['posx'];
$posy = $rsa['posy'];

echo
'<body background="image/fond.jpg" bgproperties="fixed">
<center>
<form action="attaque_distante_ok.php" method="post"><strong>Les victimes possibles<br>
<select name="attaque_joueur">
</strong></center>'
;
for (
$x=$rsa['posx']-1;$x<=$rsa['posx']+1;$x++) {// tous les x autour du joueur a case -1 et case +1
for ($y=$rsa['posy']-1;$y<=$rsa['posy']+1;$y++) {// tous les y autour du joueur a case -1 et case +1
// for ($x=$posx-1;$x<=$posx+1;$x++) {// tous les x autour du joueur a case -1 et case +1
// for ($y=$posy-1;$y<=$posy+1;$y++) {// tous les y autour du joueur a case -1 et case +1

//$sql = mysql_query("SELECT pseudo FROM membres WHERE posx='.$x.' AND posy='.$y.' ORDER BY posx DESC,posy DESC") or die(mysql_error());
$sql = mysql_query("SELECT pseudo FROM membres WHERE posx= $x AND posy= $y ORDER BY posx DESC, posy DESC;") or die(mysql_error());
while (
$data = mysql_fetch_assoc($sql)) {
if (!empty(
$data['pseudo']) and $data['pseudo'] != $_SESSION['id'])// si on trouve un joueur et que ce n'est bien sur pas vous
{
echo
'<option value="'.$data['pseudo'].'"></option>'; //on l'affiche

}
}
mysql_free_result($sql);
}
}
echo
'</select><br><center><input type="submit" name="attaque_joueur" value="Attaquer"></form></center>';

?>



RE: soucis sur affichage d'un perso proche - pascal - 19-11-2008

tu as remplis l'attribut value dans option, mais tu as oublié la partie "texte visible"

tu devrais avoir un code sur la page du genre :
Code PHP :
<?php 
<option value="pascal">pascal</option>

tu vois comment corriger ça ?

A+

Pascal


RE: soucis sur affichage d'un perso proche - Rouge - 20-11-2008

:heuuu:

Ben, je ne vois pas trop comment corriger celà:

Code PHP :
<?php 
echo '<option value="'.$data['pseudo'].'"></option>';

est censé afficher la variable pseudo, donc le nom du (des) joueur(s) présent(s) à 1 case autour, non?

Ou alors, c'est 1 pb de concaténation (encore :wowowowSmile ?


RE: soucis sur affichage d'un perso proche - Rouge - 20-11-2008

Ah, pardon, ainsi celà va mieux...

Code PHP :
<?php 
echo '<option value="'.$data['pseudo'].'">'.$data['pseudo'].'</option>'; //on l'affiche

Mais bon, il reste 1 petit détail, le joueur qui valide l'attaque apparait lui aussi dans la liste des attaquables :nonon:


RE: soucis sur affichage d'un perso proche - Eluox - 20-11-2008

Si j'ai pigé, le pseudo du joueur qui lance une attaque apparait ?
Dans ta condition, avant le while, tu a :
Code PHP :
<?php 
AND $data['pseudo'] != $_SESSION['id']

Tu compare un pseudo, avec l'id d'un joueur, donc sa ne sera jamais égal, donc ta condition est toujours vraie. Je pense


RE: soucis sur affichage d'un perso proche - Rouge - 20-11-2008

Autant pour moi, c'est corrigé :mauvais:
Code PHP :
<?php 
if (!empty($data['pseudo']) and $data['pseudo'] != $_SESSION['pseudo'])// si on trouve un joueur et que ce n'est bien sur pas vous
{
echo
'<option value="'.$data['pseudo'].'">'.$data['pseudo'].' </option>'; //on l'affiche
}
Donc, j'arrive (presque) à mes fins (h)

Dernier truc, mais je ne sais si c'est possible?
---> afficher l'avatar du joueur en plus de son pseudo :motard:
J'ai testé plusieurs soluces mais:
1) dois je la mettre dans le <option>?
2) a coté ou en dessous?
3) quelle concaténation?


RE: soucis sur affichage d'un perso proche - zeppelin - 20-11-2008

euh... XD un peu zarb ton code, des includes pas pareils (d'ailleurs pour connection il faut un require, pas include).

A vrai dire je n'ai pas bien compris ton but final, du coup pas facil à t'aider... Explique ce que tu veux au final et je t'arrange ça ;-)


RE: soucis sur affichage d'un perso proche - Rouge - 22-11-2008

C'est ici que celà se joue:

Code PHP :
<?php 
echo '<option value="'.$data['pseudo'].'">'.$data['pseudo'].' <img src="./avatars/ "'.$data['avatar'].'" "></option>'; //on l'affiche

$data ['pseudo'] retourne bien le nom du joueur, et il faudrait que son avatar apparaisse à coté si cela est possible :heuuu:


RE: soucis sur affichage d'un perso proche - Eluox - 22-11-2008

Tu veux que quand on choisi un pseudo dans la liste, son avatar apparaissent a coté de la liste ?


RE: soucis sur affichage d'un perso proche - Rouge - 22-11-2008

Exactement.