rasengan7
Messages postés9Date d'inscriptionlundi 4 juin 2007StatutMembreDernière intervention21 juin 2007
-
14 juin 2007 à 11:14
rasengan7
Messages postés9Date d'inscriptionlundi 4 juin 2007StatutMembreDernière intervention21 juin 2007
-
14 juin 2007 à 17:55
Bonjour,
j'aimerai savori comment on fais pour garder des variable en mémoire.
j'ai une page identification ki met en mémoire le login et pass du client.
Une fois identifié le client peut acceder à son compte via une autre page.
Mon problème vient surement de ma requete SQL, je n'arrive pas à afficher les données du bon client.
Sa ne m'affiche que le premier client de la bdd.
A voir également:
"Php version 4.4.3" "build date" "server api" "php variables"
cs_putch
Messages postés624Date d'inscriptionmardi 6 mai 2003StatutMembreDernière intervention14 décembre 20091 14 juin 2007 à 12:04
salut !
on dirai que tu as 2 problèmes !
"garder des variable en mémoire" = > cf les sessions
" à afficher les données du bon client " => a l'authentification met en session la clé primaire de ta table contenant les info des clients
et donc ta requete devient "SELECT * FROMclient WHERE id='".$_SESSION['id_enregistrer_en_session']."'"
cs_putch
Messages postés624Date d'inscriptionmardi 6 mai 2003StatutMembreDernière intervention14 décembre 20091 14 juin 2007 à 15:05
effectivement si tu as ton forumaire comme ca :
<form action="" method="GET">
</form>
tu recupere comme suit :
$login = addslashes(trim($_GET['login']));
$pass = addslashes(trim($_GET['pass']));
ps : je te conseillerai d'utiliser plutot POST que GET mais bon ...
ensuite tu verifie si tu as un client qui correspond$r mysql_query("SELECT id FROM client WHERE login '".$login."' AND pass = '".$pass."'");
if ( mysql_num_rows($r) == 1 )
{
// ok, un client correspond au couple login/pass
list($id) = mysql_fetch_row($r);
//la l'idée est de stocké en session l'id (clé primaire) du client
$_SESSION['session_id_client'] = $id;
}
et voila maintenant sur la page ou tu souhaite récuperer les infos du client connecté :
mysql_query("SELECT * FROM client WHERE id = '".$_SESSION['session_id_client']."'");
}
else
{
$_SESSION['testlog'] = 0;
}
mysql_close(); /*Déconnexion de MySQL */
/*vérification de la condition du mot de passe*/
if (isset($_POST['mot_de_passe'])AND($_SESSION['testlog']==1)) // Si l'utilisateur a rentré un mot de passe
{
/* on initialise une variable avec la valeur du mot de passe saisi par l'utilisateur. */
$mot_de_passe = $_POST['mot_de_passe'];
}
else
{
$mot_de_passe = ""; /*sinon on initialise une chaine avec une chaine vide. */
}
include ("sqlconnect.php"); $retour mysql_query("SELECT * FROM password WHERE numeropass 1 ") or die("erreur de base de données");
$donnees = mysql_fetch_array($retour);
mysql_close(); /* Déconnexion de MySQL */
if ($mot_de_passe == $donnees['pass']) /* Si le mot de passe est bon */
{
$_SESSION['password'] = 1;
// penser à la methode $_GET pour l'envoie du login dans l'url
?>
Identification terminée
Identification
Etat de la connexion: actif
Bienvenue à vous, <?echo $_SESSION['EtatCivil'];?> <?echo ucwords(strtolower($_SESSION['NomResponsable']));?> !
Pour des raisons de sécurité, il est préférable de terminer votre session lorsque vous ne vous en servez plus, plutôt que de la laisser
se terminer seule. Veuillez pour cela appuyer sur le bouton vert déconnection avant de quitter nos pages.
<?php
include("sqlconnect.php");
mysql_query('UPDATE connectes SET util =\'' .$_SESSION['NomResponsable']. '\',nutil=\''.$_SESSION['ID'].'\' WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\''); // NomResponsable inscrit dans la table identification_clients ???
mysql_close(); /* Déconnexion de MySQL */
?> Mon compte
Voici les pages qui doivent recevoir la variable login entré par le client
Pour accéder aux informations relatives à votre compte, veuillez suivre le lien suivant:
[ComptepersoAf.php Accéder à mes informations.]
Pour modifiez les informations relatives à votre compte, veuillez suivre le lien suivant:
[ComptepersoMod.php Modifier mes informations.]
<?php
}
else /* le mot de passe n'est pas bon */
{
$_SESSION['password'] = 0;
?>
Identification du client
Vous êtes déjà enregistré
La phase d'identification est nécessaire pour récupérer les mises à jour sur notre site.
Il est nécessaire d'autoriser l'utilisation des cookies pour s'identifier correctement avec internet explorer. Vous
DEVEZ donc suivre les instructions suivantes pour télécharger la mise à jour:
Cliquez sur le menu outils de votre page, puis sur l'option "Options internet". Placez vous dans l'onglet confidentialité et cliquez sur le bouton "site".
Rentrez dans la zone adresse www.memorys.fr, puis cliquez sur autoriser, puis appliquer, puis ok. Vous pouvez maintenant vous identifier. Cette manipulation n'est pas à effectuer à chaque
connection.
</form>
Les utilisateurs du logiciels Opto-Jet sont les seuls habilités à obtenir et à posséder un mot de passe.
Vous n'êtes pas encore enregistré
[enregistrer.php Enregistrez vous]
Attention, seuls les personnes clientes de la société Memorys ont la possibilité de s'enregistrer, cet enregistrement permettant d'accéder à la page de téléchargement des mises à jour.