JeuWeb - Crée ton jeu par navigateur

Version complète : [Carte] Système et galaxie
Vous consultez actuellement la version basse qualité d'un document. Voir la version complète avec le bon formatage.
Pages : 1 2 3 4 5 6 7 8
bon ben mtn le truc de mot de passe, connection et tout c'est reglé!

avec des echo dans le code j'arrive a afficher le pseudo, la galaxie, position et tou! donc le problème ne vient plu de là
je vous redonne le code complet:

Code PHP :
<?php
session_start
();


mysql_connect("xxxx","""");
           
mysql_select_db("xxxx");

$pseudo_membre $_SESSION['pseudo'];
$requete mysql_query("SELECT * FROM membres WHERE `pseudo`='$pseudo_membre'") or die(mysql_error());
$var mysql_fetch_array ($requete);

    
$id $var['id'];
    
$pseudo $var['pseudo'];
    
// jusqu'ici, c'est comme d'hab, on viens chercher les
// informations du joueur.// recuperation des positions sur la carte du joueur
$requete2 mysql_query("SELECT * FROM membres WHERE `pseudo`='$pseudo_membre'") or die(mysql_error());
$var2 mysql_fetch_array ($requete2);
    
$galaxie $var2['galaxie'];
    
$systeme $var2['systeme'];
    
$position $var2['position'];

//Changement de vue    
if (isset($_POST['galaxie_select']) and isset($_POST['systeme_select']))  // Si cangement de vue
{    
// si on a changé de vue, les coordonnee changent
$galaxie $galaxie_select;
$systeme $systeme_select;

}
else {
//sinon on garde les coordonnees du joueur
$galaxie $galaxie;
$systeme $systeme;
    }    





// Affichage de la barre de changement de galaxie et systeme
echo '<form action="galaxie.php" method="post">';
echo 
'Galaxie : ';    
            echo 
'<select name="galaxie_select">';
            
// on affiche la selection du systeme, ici 10 pour le test
                
for($galaxie_select=1;$galaxie_select<=10;$galaxie_select++){
                    if (
$galaxie_select == $galaxie){
                        
$selected 'selected';
                }
                else {
                            
$selected '';
                            }
                            
                echo 
'<option value="'.$galaxie_select.'"'.$selected.'>'.$galaxie_select.'</option>';
                }
            echo 
'</select>';
            
echo 
' - Systeme : ';    
            echo 
'<select name="systeme_select">';
            
// on affiche la selection du systeme, ici 200
                
for($systeme_select=1;$systeme_select<=200;$systeme_select++){
            if (
$systeme_select == $systeme){
                        
$selected 'selected';
                }
                else {
                            
$selected '';
                            }
            echo 
'<option value="'.$systeme_select.'"'.$selected.'>'.$systeme_select.'</option>';
                }
            echo 
'</select>';
        echo 
'<br><br>';
echo 
'<input type="submit" value="Changer de carte"></form>';
// fin de l'Affichage de la barre de changement de galaxie et systeme





//depart de la carte
echo '<br><br><table width="300" border="1" cellspacing="0" cellpadding="0" align="center" height="300">';
    echo 
'<tr align="center" valign="middle" height="60">';//premiere ligne de la table

//on va chercher les autres joueurs presents sur cette galaxie et ce systeme

$sql mysql_query("SELECT 'pseudo', 'galaxie', 'systeme', 'position' FROM membres WHERE galaxie ='".$galaxie."' and systeme ='".$systeme."' ORDER BY position DESC") or die(mysql_error());
while (
$data mysql_fetch_array($sql)) {
if (empty(
$TabMAP[$data['position']]))
   
$TabMAP[$data['position']] = $data['position']; //je cree un tableau avec les positions
   
$TabMAP2[$data['position']] = $data['pseudo']; //je cree un tableau avec les pseudos
}
mysql_free_result($sql);

for(
$pos=1;$pos<=25;$pos++){ // on definit la taille de la carte - ici 25 cases

//*****Gestion des fins de lignes*****
if ($pos == or $pos == 10 or $pos == 15 or $pos == 20){
// si on arrive en fin de ligne
//on ferme la ligne et on va a la ligne suivante
$finligne '</tr><tr align="center" valign="middle" height="60">';
}
elseif (
$pos == 25){
// si on arrive en fin de tableau
//on ferme le tableau
$finligne '</tr>';
}
//sinon
else
{
    
//on reste sur la meme ligne
    
$finligne '';
}
//*****fin de la Gestion des fins de lignes*****

// si case 13 (centre de la carte), on affiche le soleil
if ($pos == 13){
echo 
'<th align="center" valign="middle" width="60" height="60"><img src="soleil.jpg" alt="soleil" height="60" width="60"></th>'.$finligne;
}   
else
// si un autre joueur existe sur une position de la carte
if(!empty($TabMAP[$pos])){
//on affiche sa flotte
echo '<th align="center" valign="middle" width="60" height="60"><img src="planete.jpg" alt='.$TabMAP2[$pos].' height="60" width="60"></th>'.$finligne;
}         
else 
//sino
{
// on affiche rien (moi j'ai mis les autres positions pour le test. suffit de faire ctrl+a pour voir apparaitre les positions
echo '<th align="center" valign="middle" width="60" height="60">'.$pos.'</th>'.$finligne;
}
}
echo 
'</table>'// on ferme le tableau


echo "$pseudo";
echo 
"$galaxie";
echo
"$systeme";
echo
"$position";
// ces echo affichent bien ce qu'ils doivent afficher

?>

j'avance, j'avance.... a pas de fourmi! en 3 jours et avec l'aide (bien que minime! lol) de jo, j'arrive toujours pas a afficher les pseudo a leurs place dans les cases de la galaxie....
estce que qqn a deja testé ce script?
C'est bien cela le problème de faire du c/c de script donnés et de changer les variables après :s

La prochaine fois, essaye de t'en inspirer et de l'écrire toi 16

Sinon, tu peut juste re-préciser ton problème, voire ce que nos aides ont changer ?

Merci 16
et oui je m'avoue coupable...
mais ca fé pa vrémen lougtemps que jconé le php... et jdoi me dépecher d'en aprendre le + et de coder le + possible pour créer mon jeu avec jo car on a 16ans et avec la rentré ca sera super dur...

sinon jdisais que j'arrivait a afficher la valeur des variables $pseudo, $galaxie,$systeme et position avec des echo (a la fin du code) mais que j'arrivais pas a les mettre dans les "cases" du menu galaxie a proprement parler.

en fait dans les cases ca affiche le numero des positions, j'ai l'impression de toujours etre dans le "else" de cette partie du script:


Code PHP :
// si un autre joueur existe sur une position de la carte
if(!empty($TabMAP[$pos])){
//on affiche sa flotte
echo '<th align="center" valign="middle" width="60" height="60"><img src="planete.jpg" alt='.$TabMAP2[$pos].' height="60" width="60"></th>'.$finligne;
}         
else 
//sino
{
// on affiche rien (moi j'ai mis les autres positions pour le test. suffit de faire ctrl+a pour voir apparaitre les positions
echo '<th align="center" valign="middle" width="60" height="60">'.$pos.'</th>'.$finligne;

Euh, juste une question, elle est définie ou ta variable $pos (j'éspère que c'est pas sa l'erreur sinon 99 16 ) ?
Code PHP :
//on va chercher les autres joueurs presents sur cette galaxie et ce systeme

$sql mysql_query("SELECT 'pseudo', 'galaxie', 'systeme', 'position' FROM membres WHERE galaxie ='".$galaxie."' and 

ya une erreur ici

tu fais select 'pseudo' etc
faut virer les ' ' et ca marche nickel
Il a dit qu'il arrivait à afficher les noms, donc je pense pas que ca vienne de la ...

Je crois surtout qu'il a pas défini $pos et donc que tout ton script ne peut pas marcher, car aucun if() peut etre éxécuter.

Tu as oublié selon moi de remplacer $pos par ta variable $position.
nono tout le reste est bon, le $pos viens du for
g teste son script et c bien les ' ' le pb
Alors pourquoi arrive t'il à les affichers avec echo ?
tous ses echo a la fin fonctionnent (voir + haut)

ce qu'il n'arrivais pas à faire c'est voir son joueur sur la map et c'etait normal. a cause des ' ' sur les champs du select, si tu fais un echo $tabmap[$data['position']]; cela te donne "position" au lieu de "2" par exemple donc ca correspond pas au $pos et donc ca n'affiche rien sur la map....
Ah, d'accord 16

Bah j'éspère pour lui que ca marchera également chez lui 1
Pages : 1 2 3 4 5 6 7 8
URLs de référence