Les bases d'un jeu web en PHP
Introduction
Bienvenue, cher amateur de programmation! Dans ce tutoriel, je vais t'apprendre les bases de la création d'un jeu en PHP/MySQL.
Pourquoi création est en gras? Parce que je vais vous apprendre ici les bases de création d'un jeu, et non de la programmation.
Il faut donc avoir des connaissances en PHP & MySQL!
Allez, vous êtes prêts?
Que faut il?
Ah… THE question!
Que faut il pour créer un jeu web complet ?
Rien de plus simple ! (en difficile !)
L'idée de votre jeu
Un jeu, c'est un projet. C'est une idée qui se concrétise. C'est un agglomérat de technologies, d'idées, d'avancement et des déconvenues, de temps investit, de confrontation d'idées. C'est une aventure … avec tout ce que l'on peut y imaginer. Généralement, "L'idée", vous l'avez déjà eue. Cela peut-être une idée totalement novatrice, ou refaire un jeu existant … mais en mieux. Dans ce dernier cas, essayez de vous renseigner sur le projet que vous voulez plagier : combien de personnes y a travailler dessus ? Quels est le niveau de ces personnes ? Combien de temps ont-ils consacrés ?
S'il s'agit d'une idée originale, dites-vous bien que le projet risque d'être long … très long … et que cela risque de mettre votre motivation à l'épreuve.
L'espace de travail
IL faut tout d'abord vous organiser.
Créez un répertoire sur votre ordinateur qui contiendra tous les dossiers/fichiers du jeu.
Mais il vous faut surtout des programmes !
N'espérez pas faire un jeu avec FrontPage… c'est bien pour une page simple, mais dès qu'on touche au PHP, il lâche… pareil avec Iweb etc.
L'excellence est bien évidemment Dreamweaver, par Adobe (pas donné il est vrai, mais une démo de 30 jours peut vous rendre bien des services) mais pour les bourses plus légères, un simple éditeur de texte suffit (optez pour un qui colore le code) mais cela bien évidemment uniquement pour le code, le design c'est autre chose.
Un langage dynamique
Pour rendre votre jeu dynamique, c'est-à-dire qu'il change en fonction de ce que fait l'utilisateur, vous aurez besoin d'un langage dynamique qui pourra interprété les actions des joueurs. Dans ce tutoriel, nous utiliserons un des langages les plus populaires : le PHP.
Un Espace Membre
Eh oui, car tout bon jeu nécessite un compte !
Commençons par l'inscription, car c'est là que démarre tout bon joueur :
Oooooh ! Quelle magnifique page !
Mais, malheureusement, elle ne sert à rien pour l'instant !
C'est pourquoi il faut l'améliorer avec du code PHP afin de la rendre dynamique !
Ajoutez ça au dessus de tout le code :
ATTENTION : c'est un code ultra-simplifié, sans aucune protection ! A vous de le rendre correct !
Voila ! Votre jeu compte désormais un joli membre !
La connexion
Cette fois encore je vous donne juste des bases de code à modifier
Pour lancer une connexion, créez une page de vérification, puis ajoutez ce code :
Et voila ! vous êtes connecté !
Pour protéger une page, utilisez le code :
Pour afficher le pseudo du membre ajoutez :
Et enfin pour finir, la déconnexion :
pour en savoir plus sur les fonctions des sessions, un très bon tuto est disponible ici
Je finirai ce tuto plus tard, n'hésitez pas à le compléter !
Introduction
Bienvenue, cher amateur de programmation! Dans ce tutoriel, je vais t'apprendre les bases de la création d'un jeu en PHP/MySQL.
Pourquoi création est en gras? Parce que je vais vous apprendre ici les bases de création d'un jeu, et non de la programmation.
Il faut donc avoir des connaissances en PHP & MySQL!
Allez, vous êtes prêts?
Que faut il?
Ah… THE question!
Que faut il pour créer un jeu web complet ?
Rien de plus simple ! (en difficile !)
L'idée de votre jeu
Un jeu, c'est un projet. C'est une idée qui se concrétise. C'est un agglomérat de technologies, d'idées, d'avancement et des déconvenues, de temps investit, de confrontation d'idées. C'est une aventure … avec tout ce que l'on peut y imaginer. Généralement, "L'idée", vous l'avez déjà eue. Cela peut-être une idée totalement novatrice, ou refaire un jeu existant … mais en mieux. Dans ce dernier cas, essayez de vous renseigner sur le projet que vous voulez plagier : combien de personnes y a travailler dessus ? Quels est le niveau de ces personnes ? Combien de temps ont-ils consacrés ?
S'il s'agit d'une idée originale, dites-vous bien que le projet risque d'être long … très long … et que cela risque de mettre votre motivation à l'épreuve.
L'espace de travail
IL faut tout d'abord vous organiser.
Créez un répertoire sur votre ordinateur qui contiendra tous les dossiers/fichiers du jeu.
Mais il vous faut surtout des programmes !
N'espérez pas faire un jeu avec FrontPage… c'est bien pour une page simple, mais dès qu'on touche au PHP, il lâche… pareil avec Iweb etc.
L'excellence est bien évidemment Dreamweaver, par Adobe (pas donné il est vrai, mais une démo de 30 jours peut vous rendre bien des services) mais pour les bourses plus légères, un simple éditeur de texte suffit (optez pour un qui colore le code) mais cela bien évidemment uniquement pour le code, le design c'est autre chose.
Un langage dynamique
Pour rendre votre jeu dynamique, c'est-à-dire qu'il change en fonction de ce que fait l'utilisateur, vous aurez besoin d'un langage dynamique qui pourra interprété les actions des joueurs. Dans ce tutoriel, nous utiliserons un des langages les plus populaires : le PHP.
Un Espace Membre
Eh oui, car tout bon jeu nécessite un compte !
Commençons par l'inscription, car c'est là que démarre tout bon joueur :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
</head>
<body>
<p>Inscription à mon jeu:</p>
<form id="form1" name="form1" method="post" action="inscription.php">
<label>Nom d'utilisateur
<input type="text" name="login" id="login" />
</label>
<br />
<label>Mot de passe
<input type="text" name="pass" id="pass" />
</label>
<br />
<label>Adresse E-mail
<input type="text" name="mail" id="mail" />
</label>
<p>
<label>
<input type="submit" name="button" id="button" value="Envoyer" />
</label>
<label>
<input type="reset" name="button2" id="button2" value="Réinitialiser" />
</label>
</p>
</form>
<p> </p>
</body>
</html>
Oooooh ! Quelle magnifique page !
Mais, malheureusement, elle ne sert à rien pour l'instant !
C'est pourquoi il faut l'améliorer avec du code PHP afin de la rendre dynamique !
Ajoutez ça au dessus de tout le code :
<?php
//on initialise les variables
$pseudo = $_POST['pseudo'];
$mail = $_POST['mail'];
mysql_connect("localhost", "Login", "MDP");
mysql_select_db("JEUWEB");
// On ajoute une entrée avec mysql_query
mysql_query("INSERT INTO membres VALUES('', '".$pseudo."', '".$pass".', '". .md5(mysql_escape_string($_POST['pass']))."')");
mysql_close();
?>
ATTENTION : c'est un code ultra-simplifié, sans aucune protection ! A vous de le rendre correct !
Voila ! Votre jeu compte désormais un joli membre !
La connexion
Cette fois encore je vous donne juste des bases de code à modifier
Pour lancer une connexion, créez une page de vérification, puis ajoutez ce code :
<?php
// Démarrage ou restauration de la session
session_start();
// Ecriture d'une nouvelle valeur dans le tableau de session
$_SESSION['login'] = $login
$_SESSION['id'] = $id // vous devez initialiser ces deux variables avant ce code
?>
Et voila ! vous êtes connecté !
Pour protéger une page, utilisez le code :
<?php
// On prolonge la session
session_start();
// On teste si la variable de session existe et contient une valeur
if(empty($_SESSION['login'])) {
// Si inexistante ou nulle, on redirige vers le formulaire de login
header('Location: connexion.php');
exit();
}
?>
Pour afficher le pseudo du membre ajoutez :
<?php
echo 'Bienvenue ', $_SESSION['login'];
?>
Et enfin pour finir, la déconnexion :
<?php
// On appelle la session
session_start();
// On écrase le tableau de session
$_SESSION = array();
// On détruit la session
session_destroy();
?>
pour en savoir plus sur les fonctions des sessions, un très bon tuto est disponible ici
Je finirai ce tuto plus tard, n'hésitez pas à le compléter !