Un tableau dans une session
Bonjour, je me tape la tete contre les murs lol. Je veux faire un pendu.
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
| <?php
session_start();
?>
<html>
<body>
<?php
// Choix du mot si une partie n'est pas commencée
if(!isset($_SESSION['en_cours']) || $_SESSION['en_cours'] == "non" || $_GET['action'] == "reset")
{
if (!$fp = fopen("liste.txt","r"))
{
echo'Erreur d\'ouverture du fichier';
}
else
{
$file = fopen("liste.txt", "r");
}
// Choix du mot
$mots = fgets($file);
$liste = explode("|",$mots);
$count = count($liste);
$rand = rand(1, $count-1);
//Enregistrement du mot
$_SESSION['mot'] = $liste[$rand];
//Decoupage du mot
$_SESSION['tableau_mot'] = preg_split('//', $_SESSION['mot'], -1, PREG_SPLIT_NO_EMPTY);
//Création du tableau du mot de l'utilisateur
for($i = 1; $i <= $count; $i++)
{
$_SESSION[$tableau_mot_user[$i]] = 0;
}
//Demarage de la partie
$_SESSION['en_cours'] = "oui";
$_SESSION['nbTentatives'] = 0;
$_SESSION['nbLettresTrouvees'] = 0;
//Fermeture du fichier
fclose($file);
}
echo 'Lancement du jeu :<br /><br />';
echo '- Le fichier contenant la liste des mots est <b>ouvert</b>.<br />';
echo '- Le mot a été <b>choisit</b>. <br />';
echo '<a href="pendu.php?action=reset">Nouvelle partie</a><br /><br />';
// Traitement du jeu si une partie est lancée
if($_SESSION['en_cours'] == "oui")
{
//Dans le cas on reçoit une lettre, on la traite
if(isset($_GET['lettre']))
{
$lettre = $_GET['lettre'];
$_SESSION['nbTentatives']++;
$longueur_mot = strlen($_SESSION['mot']);
for($i = 1; $i <= $longueur_mot; $i++)
{
if($_SESSION[$table_mot[$i]] == $lettre)
{
$_SESSION['nbLettresTrouvees']++;
$_SESSION[$tableau_mot_user[$i]] = 1;
}
}
}
// Affichage de l'image et des infos
echo'<img src="images/'.$_SESSION['nbTentatives'].'.jpg" /><br /><br />';
echo'Nombre de lettres trouvées : '.$_SESSION['nbLettresTrouvees'].'<br />';
echo'Nombre de tentatives : '.$_SESSION['nbTentatives'].'<br /><br />';
//Affichage du mot a trouver
echo'<br /><br />----------------------------------------<br /><br />';
$longueur_mot = strlen($_SESSION['mot']);
for($i = 1; $i <= $longueur_mot; $i++)
{
if($_SESSION[$table_mot_user[$i]] == 1)
{
echo ' '.$_SESSION[$tableau_mot[$i]].' ';
}
else
{
echo ' - ';
}
}
echo'<br /><br />----------------------------------------<br /><br />';
for($i = 1; $i <= $longueur_mot; $i++)
{
echo ' '.$_SESSION[$tableau_mot[$i]].' ';
}
echo'<br /><br />----------------------------------------<br /><br />';
//Affichage des lettres pour cliquer ou d'un message si la partie est terminée
if($_SESSION['nbTentatives'] < 6)
{
$i = 'a';
$c = 1;
while($c <= 26)
{
echo'<a href="pendu.php?lettre='.$i.'">'.$i.'</a> ';
$c++;
$i++;
}
}
else
{
echo'Partie terminée';
}
}
?>
</body>
</html> |
Comment je dois faire pour mettre un tableau dans une session ?
Ca pose problème ici je pense :
Code:
1 2 3 4 5 6 7 8
| //Decoupage du mot
$_SESSION['tableau_mot'] = preg_split('//', $_SESSION['mot'], -1, PREG_SPLIT_NO_EMPTY);
//Création du tableau du mot de l'utilisateur
for($i = 1; $i <= $count; $i++)
{
$_SESSION[$tableau_mot_user[$i]] = 0;
} |
Merci :)
Elwyn