User type en login

Résolu/Fermé
cristof1 Messages postés 16 Date d'inscription mardi 9 juin 2015 Statut Membre Dernière intervention 28 juin 2015 - Modifié par jordane45 le 9/06/2015 à 15:08
cristof1 Messages postés 16 Date d'inscription mardi 9 juin 2015 Statut Membre Dernière intervention 28 juin 2015 - 23 juin 2015 à 18:21
D'abord, je vous souhaite à tous le meilleur; je m'appel cristof je suis en etudiant a la fac de technologie et plus precisement en informatique ,J'ai besoin de votre aide je suis un debutant en php et je fais une petite application consernat gestion de stock et je deux types d'utlisateur administrateur et gestionnaire chacun a un interface.
ma question et comment en login je peut differencier entre c'est deux types de user .
voila je commace a essai une code mais malereusement il ne marche pas je cree une table qui contient 4 champs id,usernam,password,user_type et
je fais mon formulaire et voila ce que je fais en suite
 <?php
$connect = mysql_connect("localhost","root","");
$select_db = mysql_select_db("db");
$id=$_SESSION['id'];
$sql=("select * from * membres where id='$id' ");
$row = mysql_fetch_assoc($sql);
$user_type = $row['user_type'];
       if($user_type == 1){        
                         header('Location:login.php'); 
                             exit();            }
      elseif($user_type == 2){
            echo ("mcheynek");
            }


?>

merci en avence


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Merci d'y penser dans tes prochains messages.
.

2 réponses

ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225
Modifié par gravgun le 9/06/2015 à 15:11
'lut, ça ne marches pas car ici tu ne fais pas la requête: tu n'as pas lancé de
mysql_query
, dont là seulement tu pourras récupérer le résultat avec
mysql_fetch_assoc
. De plus, ta requête comporte une
*
de trop.

Toitefois:

L'extension MySQL est obsolète!

Elle est dangereuse par design en entraîne de mauvaises pratiques.
Si tu peux, sers toi de mysqli (très semblable) ou de PDO; dans les deux avec les requêtes préparées.
Si tes professeurs refusent que tu te serves d'autre chose que la vieille extension MySQL, qu'ils se carrent mon argumentaire dans l'arrière-train, car ils t'apprennent a utiliser quelque chose qui aura disparu d'ici 2 ans. (Elle se fera retirer de PHP dès PHP 6, dont la sortie a déjà été repoussée)
from human import idiocy
del idiocy
0
cristof1 Messages postés 16 Date d'inscription mardi 9 juin 2015 Statut Membre Dernière intervention 28 juin 2015
9 juin 2015 à 15:38
merci pour votre reponse c'est gentiel

je n'est pas bien compris votre reponse ou """L'extension MySQL est obsolète!"" oui je oublier carement my sql querry le code ne marche pas apres le chagement
je veus une explication pas par pas je suis un ane maleureusement
voila ce que je fais
<?php
$connect = mysql_connect("localhost","root","");
$select_db = mysql_select_db("db");
$id=$_SESSION['id'];
$sql=mysql_query("select * from membres where id='$id' ");
$row = mysql_fetch_assoc($sql);
$user_type = $row['user_type'];
if($user_type == 1){

header('Location:login.php');
exit();
}
elseif($user_type == 2){
echo ("mcheynek");
}


?>
m
0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225 > cristof1 Messages postés 16 Date d'inscription mardi 9 juin 2015 Statut Membre Dernière intervention 28 juin 2015
Modifié par gravgun le 9/06/2015 à 15:49
C'est
$row = mysql_fetch_assoc($sql);
qu'il faut faire.
Quant au "L'extension MySQL est obsolète!", c'est un très gros avertissement: les fonctions
mysql_*
qui sont vouées à disparaître et présentent des inconvénients majeurs notamment au niveau de la sécurité. N'oublies pas de cliquer sur le lien pour en savoir plus.
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
9 juin 2015 à 15:10
Bonjour,

- Tu as une * en trop dans ta requête
$sql=("select * from membres where id='$id' ");


- Tu as oublié d'en faire le QUERY
mysql_query($sql) or die ("Erreur dans la requete " .$sql );




PS: Penses aussi que là ..... tu utilises une "vielle" extension mysql ... (considérée comme obsolète..)...
Lis ceci : https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
0
cristof1 Messages postés 16 Date d'inscription mardi 9 juin 2015 Statut Membre Dernière intervention 28 juin 2015
9 juin 2015 à 15:39
oui en cour de traitement
je n'est pas compris je suis en debutant §§§*
PS: Penses aussi que là ..... tu utilises une "vielle" extension mysql ... (considérée comme obsolète..)...
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > cristof1 Messages postés 16 Date d'inscription mardi 9 juin 2015 Statut Membre Dernière intervention 28 juin 2015
9 juin 2015 à 16:17
.. tu n'as pas compris quoi ??
Pour le "mysql est obsolète" ??? .... as tu pris, au moins, le temps d'aller lire le contenu du mail qu'on t"a donné ???
0
cristof1 Messages postés 16 Date d'inscription mardi 9 juin 2015 Statut Membre Dernière intervention 28 juin 2015 > jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024
23 juin 2015 à 18:21
merci
0