Meddelande

Minska
No announcement yet.

Kan någon vara vänligen och hjälpa mig med detta?

Minska
X
 
  • Filter
  • Klockan
  • Show
Clear All
new posts

  • #16
    Tack nu funkar det att bli medlem på min sida men nu kommer Problemet med inloggningen. :/

    När jag försöker logga in på min sida så kommer detta upp

    Microsoft VBScript runtime error '800a000d'

    Type mismatch

    /dologin.asp, line 27


    rad 27 är
    Kod:
    if  rs("antal")=1 then 'om vi har fått en träff i databasen

    här är all min kod till dologin.asp
    Kod:
    <%
    connectionString = "Driver={MySQL ODBC 3.51 Driver};Server=******;Option=3;Database=******;Uid=*******r;Pwd=********;" 
    
    Set connection=Server.CreateObject("ADODB.Connection")
    connection.open(connectionString)
    
    username=request.Form("username")
    password=request.Form("password")
    
    
    SQL="select count(*) as antal from medlem where username ='"& username & "' and password='"& password &"'" 
    
    
     
    set rs=connection.execute(SQL)
    
    if  rs("antal")=1 then 'om vi har fått en träff i databasen
    	session("medlem")=username 'tilldelar sessionvariablen. värdet i username
    	response.Redirect("in.asp")'länkar till sida 
    else
    	response.Redirect("fel.asp")
    end if
    %>

    Kommentera


    • #17
      Du måste ju kolla att rs inte är EOF, vilket den verkar vara:
      [kod]set rs=connection.execute(SQL)

      if Not RS.EOF Then 'om vi har fått en träff i databasen
      session("medlem")=username 'tilldelar sessionvariablen. värdet i username
      response.Redirect("in.asp")'länkar till sida
      else
      response.Redirect("fel.asp")
      end if
      %>[/kod]Dock så måste du nog kolla upp mot SQL injection annars är din databas rätt så körd i framtiden om du inte säkra upp den.
      "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

      Kommentera


      • #18
        Tack det funkar fin fint nu med in och utlognigen tack så mycket. kanske kommer med en ny tråd om det är problem med Forumet jag har nästan färdigt

        Kommentera


        • #19
          Välkommen tillbaka,

          Glöm inte att sätta tråden som löst på det svar som löste ditt problem.
          "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

          Kommentera


          • #20
            Hur sätter man tråden som löst?

            Kommentera


            • #21
              Mycodez skrev: Visa inlägg
              Hur sätter man tråden som löst?

              http://www.webforum.nu/faq.php?faq=v...faq_acceptance

              Sätt svaret på den person / inlägg som löste ditt problem, jag anser ju inte direkt att de svar du har markerat just nu är det svar som löste ditt problem.
              "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

              Kommentera


              • #22
                voigtann1 skrev: Visa inlägg
                Du måste ju kolla att rs inte är EOF, vilket den verkar vara:
                [kod]set rs=connection.execute(SQL)

                if Not RS.EOF Then 'om vi har fått en träff i databasen
                session("medlem")=username 'tilldelar sessionvariablen. värdet i username
                response.Redirect("in.asp")'länkar till sida
                else
                response.Redirect("fel.asp")
                end if
                %>[/kod]Dock så måste du nog kolla upp mot SQL injection annars är din databas rätt så körd i framtiden om du inte säkra upp den.
                Usch, nu såg jag ett riktig bra fel här, den kommer aldrig vara EOF, då:
                [kod]SQL="select count(*) as antal from medlem where username ='"& username & "' and password='"& password &"'" [/kod]retunera ett Recordset med en rad, med värdet "0"

                Konstigt att du fick det meddelande du fick men:
                [kod]if CLng("0" & rs("antal"))=1 then[/kod]borde fungera
                "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

                Kommentera


                • #23
                  okej vad menas med det sidan ?
                  Kod:
                  if  CLng("0" & rs("antal"))=1 then

                  Kommentera


                  • #24
                    den gör om det till ett tal.
                    "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

                    Kommentera


                    • #25
                      okej vart ska jag sätta in den kod fnutten?

                      Kommentera


                      • #26
                        Men, den där count(*) behöver ju inte finnas, eller hur?

                        antingen finns en användare med inskrivet namn/lösen eller inte, dvs du kommer få 1 eller 0 där. (såvida du inte tillåter flera användare ha samma namn+lösen vilket kommer kunna ge väldigt intressanta fenomen på andra ställen)

                        om du istället använder voigtann1 s kod i inlägg 17 tillsammans med SQL-frågan
                        Kod:
                        SELECT username FROM medlem WHERE username ='"& username & "' AND password='"& password &"'"
                        Du BÖR (läs: måste) säkra det där mot SQL-injections med

                        Kommentera

                        Working...
                        X