Celui qui sacrifie sa liberté pour sa sécurité, ne mérite aucune des deux !
Membre
|
Bonjour à vous!
Je vous explique mon problème jaimerai mettre dans ma page d'accueil un code qui permet:
-D'afficher un formulaire de connexion à mon espace membre si le visiteur n'est pas connecter (donc ce formulaire lui permet de se connecter)
- Si la personne est déjà connecter à l'espace : Afficher le nombre de message que sa messagerie contient donc afficher cela:
Vous avez 35 message, Dont 5 non lus par exemple.
j'ai essayé un code mais ça ne fonctionne pas enfin s'affiche le formulaire en cas ou la session n'est pas ouverte, mais il n'affiche rien si la session est ouverte:
<?php
if (!isset($_SESSION['login'])) {
// si ce n'est pas le cas, on le redirige vers l'accueil
echo '<form id="monForm" action="#" method="post">
<label for="form_login">Login : </label>
<input type="text" id="form_login" name="login" />
</p>
<p>
<label for="form_password">Mot de passe : </label>
<input type="password" id="form_password" name="password" />
</p>
<input type="submit" name="connexion" value="Connexion" /><input type="button" value="S\'inscrire" OnClick="window.location.href=\'utilisateurs/sinscrire.php/\'"></
</from>';
}
else {
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {
include("/utilisateurs/mysql_connect.php");
mysql_select_db($base,$connexion_base) or die ("erreur de connexion base");
mysql_query("SET NAMES 'utf8'");
$sql = 'SELECT id FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass="'.(mysql_escape_string($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$nb = mysql_num_rows($req);
if ($nb == 1) {
$data = mysql_fetch_array($req);
session_start();
$_SESSION['login'] = $_POST['login'];
// on enregistre en plus l'id du membre dans une variable de session
$_SESSION['id'] = $data['id'];
require('/utilisateurs/mysql_connect.php');
mysql_select_db($base,$connexion_base) or die ("erreur de connexion base");
$counter=mysql_query('SELECT COUNT(*) NBR_ENTREE FROM messages Where id_destinataire="'.$_SESSION['id'].'"');
// Récupère la seule ligne du jeu d'enregistrements
$row=mysql_fetch_object($counter);
echo "Vous avez <strong><a href='/utilisateurs/messagerie.php'>".$row->NBR_ENTREE."</a></strong> message(s)!.";
mysql_close();
?><br /><?php
require('/utilisateurs/mysql_connect.php');
mysql_select_db($base,$connexion_base) or die ("erreur de connexion base");
$counter=mysql_query('SELECT COUNT(*) NBR_ENTREE FROM messages Where id_destinataire="'.$_SESSION['id'].'" AND lu="0"');
// Récupère la seule ligne du jeu d'enregistrements
$row=mysql_fetch_object($counter);
echo "dont <strong><a href='/utilisateurs/messagerie.php'>".$row->NBR_ENTREE."</a></strong> message(s) non lu!.";
}
elseif ($nb == 0) {
$erreur = 'Compte non reconnu.';
}
else {
$erreur = 'Problème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
mysql_free_result($req);
mysql_close();
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
}
?>
Merci D'avance!!!
|
Celui qui sacrifie sa liberté pour sa sécurité, ne mérite aucune des deux !
Membre
|
Problème Résolu
=) Merci
|