Avatar billede chron Nybegynder
03. februar 2003 - 14:28 Der er 5 kommentarer og
1 løsning

Skal bruge en SQL query i en "if-then-else" sætning med vb.net..

Har en database hvor der står al info om mine brugere..
UserID, Username, Userpassword, UserEmail, og Accounttype.
Jeg skal bruge Accounttype ( f.eks admin, user, superuser, you name it ) i en if sætning.. f.eks if [Accounttype] = Administrator then formsauthentication.redirect(blahblah.aspx)



Copy/paste af relevant kode..


    Function Getaccounttype(ByVal username As String) As System.Data.DataSet
        Dim connectionString As String = "server='localhost'; trusted_connection=true; Database='Logincontrol'"
        Dim sqlConnection As System.Data.SqlClient.SqlConnection = New System.Data.SqlClient.SqlConnection(connectionString)

        Dim queryString As String = "SELECT [UserDetails].[Accounttype] FROM [UserDetails] WHERE ([UserDetails].[Usern"& _
"ame] = @Username)"
        Dim sqlCommand As System.Data.SqlClient.SqlCommand = New System.Data.SqlClient.SqlCommand(queryString, sqlConnection)

        sqlCommand.Parameters.Add("@Username", System.Data.SqlDbType.VarChar).Value = username

        Dim dataAdapter As System.Data.SqlClient.SqlDataAdapter = New System.Data.SqlClient.SqlDataAdapter(sqlCommand)
        Dim dataSet As System.Data.DataSet = New System.Data.DataSet
        dataAdapter.Fill(dataSet)

        Return dataSet
    End Function


Sub LoginBtn_Click(Sender As Object, E As EventArgs)
dim acctype as ?...
acctype = Getaccounttype(UserName.text)

If Page.IsValid Then
if acctype is "Administrator" then response.redirect(admins.aspx)

if acctype is "User" then response.redirect(users.aspx)

End sub


--- Håber jeg har gjort det forståeligt, vil meget gerne have hjælp med dette, da jeg sidder helt fast! spørg gerne spørgsmål hvis der er noget du ikke forstår.
- Chron
Avatar billede Lasse Novice
03. februar 2003 - 22:44 #1
Jeg ville goere det paa en lidt anderledes maade:


Function Getaccounttype(ByVal username As String) As String
        Dim connectionString As String = "server='localhost'; trusted_connection=true; Database='Logincontrol'"
        Dim sqlConnection As System.Data.SqlClient.SqlConnection = New System.Data.SqlClient.SqlConnection(connectionString)

        Dim queryString As String = "SELECT [UserDetails].[Accounttype] FROM [UserDetails] WHERE ([UserDetails].[Usern"& _
"ame] = @Username)"
        Dim sqlCommand As System.Data.SqlClient.SqlCommand = New System.Data.SqlClient.SqlCommand(queryString, sqlConnection)

sqlConnection.Open()

        sqlCommand.Parameters.Add("@Username", System.Data.SqlDbType.VarChar).Value = username

    Dim accType as String = sqlCommand.ExecuteScalar()

        Return accType
    End Function


Sub LoginBtn_Click(Sender As Object, E As EventArgs)
dim acctype as String
acctype = Getaccounttype(UserName.text)

If Page.IsValid Then
if acctype is "Administrator" then response.redirect(admins.aspx)

if acctype is "User" then response.redirect(users.aspx)

End sub
Avatar billede Lasse Novice
03. februar 2003 - 22:46 #2
ahhh, jeg glemte lige nogle faa ting:

Function Getaccounttype(ByVal username As String) As String
        Dim connectionString As String = "server='localhost'; trusted_connection=true; Database='Logincontrol'"
        Dim sqlConnection As System.Data.SqlClient.SqlConnection = New System.Data.SqlClient.SqlConnection(connectionString)

        Dim queryString As String = "SELECT [UserDetails].[Accounttype] FROM [UserDetails] WHERE ([UserDetails].[Usern"& _
"ame] = @Username)"
        Dim sqlCommand As System.Data.SqlClient.SqlCommand = New System.Data.SqlClient.SqlCommand(queryString, sqlConnection)

sqlConnection.Open()

        sqlCommand.Parameters.Add("@Username", System.Data.SqlDbType.VarChar).Value = username

    Dim accType as String = sqlCommand.ExecuteScalar()


        sqlConnection.Close()
        Return accType
    End Function


Sub LoginBtn_Click(Sender As Object, E As EventArgs)
dim acctype as String
acctype = Getaccounttype(UserName.text)

If Page.IsValid And Not acctype Is Nothing Then
if acctype is "Administrator" then response.redirect(admins.aspx)

if acctype is "User" then response.redirect(users.aspx)

End sub
Avatar billede Lasse Novice
03. februar 2003 - 22:50 #3
hmm, jeg tror det er ved at blive sent... det var faktisk et svar...
Avatar billede chron Nybegynder
04. februar 2003 - 16:07 #4
Ahhh man kan godt lave sql queries som strings! Fedt nok... det var mit problem, at jeg ikke kunne konvertere dataset til string... afprøver lige det der om en times tid!
Avatar billede chron Nybegynder
05. februar 2003 - 10:35 #5
Har haft travlt, prøver at nå at afprøve det i dag, men jeg kan ikke love!
Avatar billede chron Nybegynder
05. februar 2003 - 17:04 #6
Helt perfekt, Jeg siger mange tak til dig :) Btw, enten var det If Page.IsValid And Not acctype Is Nothing Then, eller også var det if acctype -is- "Administrator" der ikke rigtigt fungerede. ændrede det i hvert fald så det funker nu, mange tak..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester