bonjour, je suis "l'associé" de jo (celui qui vous a expliqué précédament notre problème)
je vais commencer par le début en détaillant tout bien:
j'ai tout d'abord créé une table membre contenant 2 champ:
- un champ id en auto_increment
- un champ pseudo
j'ai ensuite créé une table carte contenant 4 champ:
-pseudo
-galaxie
-systeme
-position
ces 2 tables s'apellent respectivement table_membre et table_carte. (j'ai pris les memes noms que dans le code! et oui je suis flemard! lol)
notre code est celui ci:
sur mes 2 tables j'ai créé quelques pseudo avec leurs positions pour testerje vais commencer par le début en détaillant tout bien:
j'ai tout d'abord créé une table membre contenant 2 champ:
- un champ id en auto_increment
- un champ pseudo
j'ai ensuite créé une table carte contenant 4 champ:
-pseudo
-galaxie
-systeme
-position
ces 2 tables s'apellent respectivement table_membre et table_carte. (j'ai pris les memes noms que dans le code! et oui je suis flemard! lol)
notre code est celui ci:
Code PHP :
<?php
session_start();
// j'ai volontairement mis des xxxxx! lol
mysql_connect("xxxxxxx","xxxxxx", "xxxxxxx");
mysql_select_db("xxxxxx");
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM table_membre 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 table_carte 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="carte.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="500" border="1" cellspacing="0" cellpadding="0" align="center" height="500">';
echo '<tr align="center" valign="middle" height="100">';//premiere ligne de la table
//on va chercher les autres joueurs presents sur cette galaxie et ce systeme
$sql = mysql_query("SELECT * FROM table_carte 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 == 5 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="100">';
}
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="120" height="120"><img src="soleil.jpg" alt="soleil" height="120" width="120"></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="100" height="100"><img src="planete.jpg" alt='.$TabMAP2[$pos].' height="100" width="100"></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="100" height="100">'.$pos.'</th>'.$finligne;
}
}
echo '</table>'; // on ferme le tableau
mysql_close();
?>
mais rien ne s'affiche dans les cases... ni image de planète, ni pseudo, il y a juste dans les cases leurs numéros de position
le résultat est visible a l'adresse http://soleilguerre.ifrance.com/ en allant dans le menu galaxie (je vous rassur le nom n'est pas soleilguerre! lool ce n'es qu'une page test!)
s'il y a un point que vous ne comprenez pas, demandez moi! (a moi ou a jo)
j'espère que vous pourez nous aider! et merci
ps: surtout n'imaginez pas qu'on est deux gros flemards qui n'ont fait que copier coller le code et qui veulent des expliquation car je peu vous jurer qu'on est dessus a chercher depuis une journée! hier soir on a été 3h de suite dessus a galérer sans succes avant d'enfin vous demander.)