Pour le code de connexion :
@ sert à éviter qu´un message d´erreur s´affiche.
die() permet de tout arrêter et d´afficher le message d´erreur, c´est pour quoi le premier annule le second.
isset ça veut dire ´ a été défini ´ ( is set en anglais)
si la variable de session n´a pas été définie et que tu l´appelles, ça affichera un Warning.
on évite cela en utilisant la fonction isset, qui te permet de voir tout de suite s´il y a eu connexion ou non.
En gros, tu peux mettre une fonction sur toutes tes pages qui t´affiche un formulaire de connexion rapide si l´utilisateur n´est pas connecté, ou la page normale si l´utilisateur est connecté.
Une variable de session peut-être redéfinie à volonté, et elle conserve sa valeur sur toutes les pages, tant que la fonction session_start() est présente.
Note également que les variables de session fonctionnent comme un tableau associatif.
donc le nombre de variable que tu peux stocker est infini:
Donc par exemple, je vais te donner un code simple
<?php
session_start();
if( !i sset($_SESSION[´username´]) ) // si cette variable n´existe pas :
{
if( !i sset($_POST[´pseudo´]) )
//On affiche le formulaire de connexion s´il n´a pas été rempli
{
echo ´<h3>Connexion</h3>
<form method="POST" action="#">
<b>Pseudo : </b> <input type="text" name="pseudo" maxlength="25" />
<br />
<b>Mot de Passe : </b> <input type="password" name="mdp" maxlength="20" />
<input type="submit" value="Connexion" />
</form>´;
}
else
{
//Sinon on interroge la base de données pour vérifier le mot de passe et connecter le membre
$pseudo = $_POST[´pseudo´];
$mdp = $_POST[´mdp´];
mysql_connect($sql_serveur,$sql_user,$sql_passwd)
or die(´Connexion impossible à la base de données <b>´ . $sql_bdd . ´</b> sur le serveur <b>´ . $sql_server . ´</b><br>Vérifiez les paramètres du fichier conf.php3´);
mysql_select_db($sql_database) or die(´Selection de la base ´ . $sql_database . ´ impossible´);
//On a sélectionné la base de données dans laquelle se situent nos informations. Il reste à selectionner la table des utilisateurs, par exemple ´users´
$select_user = ´SELECT `mdp`
FROM `users`
WHERE `pseudo` = "´ . $pseudo . ´ "´;
$data_user = mysql_fetch_assoc(mysql_query($select_user));
if($data_user[´mdp´] == $mdp)
{
//Si les mdp sont les même, l´utilisateur est connecté, on initialise la variable de session
$_SESSION[´username´] = $pseudo;
echo ´ Vous etes connecté, redirection...´;
//tu rediriges vers la page précédente
}
else
{
//Sinon, l´utilisateur n´est pas connecté
echo ´Le mot de passe ne correspond pas au pseudonyme...´;
}
}
else
{
//Sinon, le membre est connecté, tu affiches ta page et par exemple:
echo ´Bonjour ´ . $_SESSION[´username´] . ´ ! ´;
}
Et tu as tout ce qu´il te faut