Gestion utilisateurs [RESOLU]
Publié : lun. 10/oct./2011 20:07
Salut les amis,
Pour une application de main courante que je programme pour mon travail j’aurais besoin d'un système de login et mot de passe pour que les utilisateurs ai leurs propre session. Je pensais utiliser une base sqlite qui me permet d'ajouter ou enlever des utilisateurs. Seulement je ne sais pas du tout comment gérer ça.
Voici la procédure que j'utilise pour créer ma base.
Voici un code d'exemple de se que je veut faire en gros...
Je débute complet avec sqlite et je ne sais vraiment pas comment le gérer. Merci pour votre aide.
Pour une application de main courante que je programme pour mon travail j’aurais besoin d'un système de login et mot de passe pour que les utilisateurs ai leurs propre session. Je pensais utiliser une base sqlite qui me permet d'ajouter ou enlever des utilisateurs. Seulement je ne sais pas du tout comment gérer ça.
Voici la procédure que j'utilise pour créer ma base.
Code : Tout sélectionner
;Création de la base de données
Procedure DatabaseCreate()
Protected File.s, Database.i, ReqSQL.s
UseSQLiteDatabase()
File="Utilisateurs.db3"
Database=CreateFile(#Pb_Any, File)
If database
CloseFile(Database)
Database=OpenDatabase(#PB_Any, File,"","",#PB_Database_SQLite)
ReqSQL="BEGIN TRANSACTION;"
ReqSQL+"CREATE TABLE 'Login' (IDLogin INTEGER PRIMARY KEY, Nom TEXT, Password TEXT);"
ReqSQL+"COMMIT;"
If DatabaseUpdate(Database, ReqSQL)
CloseDatabase(Database)
Else
MessageRequester("Erreur","Erreur durant la création de la base de données")
EndIf
EndIf
EndProcedure
Code : Tout sélectionner
;/ by MetalOS
;- Global Variables and Constants
Global BubbleTipStyle.l:BubbleTipStyle=0
;- Window Constants
Enumeration 1
#Window_Form1
#Window_Form2
EndEnumeration
#WindowIndex=#PB_Compiler_EnumerationValue
;- Gadget Constants
Enumeration 1
;Window_Form1
#Gadget_Form1_Text1
#Gadget_Form1_StringNom
#Gadget_Form1_Text2
#Gadget_Form1_StringPassword
#Gadget_Form1_ButtonAnnuler
#Gadget_Form1_ButtonValider
;Window_Form2
EndEnumeration
#GadgetIndex=#PB_Compiler_EnumerationValue
Procedure.l Window_Form1()
If OpenWindow(#Window_Form1,283,145,170,128,"Login",#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_Invisible)
TextGadget(#Gadget_Form1_Text1,10,10,60,15,"Nom")
StringGadget(#Gadget_Form1_StringNom,10,25,145,20,"")
TextGadget(#Gadget_Form1_Text2,10,50,120,15,"Mot de passe")
StringGadget(#Gadget_Form1_StringPassword,10,65,145,20,"")
ButtonGadget(#Gadget_Form1_ButtonAnnuler,95,100,60,20,"Annuler")
ButtonGadget(#Gadget_Form1_ButtonValider,30,100,60,20,"Valider")
HideWindow(#Window_Form1,0)
ProcedureReturn WindowID(#Window_Form1)
EndIf
EndProcedure
Procedure.l Window_Form2()
If OpenWindow(#Window_Form2,324,183,400,300,"Logiciel",#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_WindowCentered|#PB_Window_Invisible)
HideWindow(#Window_Form2,0)
ProcedureReturn WindowID(#Window_Form2)
EndIf
EndProcedure
;Création de la base de données
Procedure DatabaseCreate()
Protected File.s, Database.i, ReqSQL.s
UseSQLiteDatabase()
File="Utilisateurs.db3"
Database=CreateFile(#PB_Any, File)
If database
CloseFile(Database)
Database=OpenDatabase(#PB_Any, File,"","",#PB_Database_SQLite)
ReqSQL="BEGIN TRANSACTION;"
ReqSQL+"CREATE TABLE 'Login' (IDLogin INTEGER PRIMARY KEY, Nom TEXT, Password TEXT);"
ReqSQL+"COMMIT;"
If DatabaseUpdate(Database, ReqSQL)
CloseDatabase(Database)
Else
MessageRequester("Erreur","Erreur durant la création de la base de données")
EndIf
EndIf
EndProcedure
;- Main Loop
If Window_Form1()
quitForm1=0
Repeat
EventID =WaitWindowEvent()
MenuID =EventMenu()
GadgetID =EventGadget()
WindowID =EventWindow()
Select EventID
Case #PB_Event_CloseWindow
If WindowID=#Window_Form1
quitForm1=1
EndIf
Case #PB_Event_Gadget
Select GadgetID
Case #Gadget_Form1_StringNom
Case #Gadget_Form1_StringPassword
Case #Gadget_Form1_ButtonAnnuler
Case #Gadget_Form1_ButtonValider
EndSelect
EndSelect
Until quitForm1
CloseWindow(#Window_Form1)
EndIf
End
Je débute complet avec sqlite et je ne sais vraiment pas comment le gérer. Merci pour votre aide.