Avatar billede MrGold Nybegynder
16. januar 2010 - 22:48 Der er 11 kommentarer og
1 løsning

Formknap udskiftet med billede / ASP / ACCES-DB

Jeg har lavet et login-system der virker helt efter hensigten. Men nu har jeg lavet min "Login"-knap om til et billede, da det passer bedre med mit design. Når jeg klikker på billede(den nye login-knap) virker den ikke efter hensigten mere, altså.. den sender mig ikke videre til næste side men opdatere istedet default.asp, her følger lidt kode:
---------------------------------------------------

<%
' Hvis der er blevet trykket på knappen "Login"
If Request.Form("Action") = "Login" Then
    ' Her forberedes de indtastede værdier til validering
    strUID = Trim(Replace(Request.Form("Brugernavn"),"'",""))
    strPWD = Trim(Replace(Request.Form("Adgangskode"),"'",""))

    ' Hvis der er skrevet noget i både brugernavn og adgangskode
    If Len(strUID) > 0 And Len(strPWD) > 0 Then

        ' DSNLess forbindelse til databasen
        Set myConn = Server.CreateObject("ADODB.Connection")
        myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("database.mdb")

        ' Opbygning af SQL streng
        strSQL = "SELECT UserID FROM bruger"&_
            " WHERE (profil = '" & strUID & "')"&_
            " AND (adgangskode = '" & strPWD & "')"

        Set rs = myConn.Execute(strSQL)
        If Not (rs.BOF Or rs.EOF) Then
            ' Hvis brugeren fandtes i databasen
            intUID = rs("UserID")
        Else
            ' Hvis brugeren ikke fandtes i databasen
            strERR = "Forkert brugernavn eller adgangskode"
        End If

        ' Rydder op i vores connection objekt
        myConn.Close
        Set myConn = Nothing

        If Len(intUID) Then
            ' Hvis variablen intUID indeholder en værdi sættes denne i sessionen "UserID" og brugeren bliver sendt videre
            Session("UserID") = intUID
            Response.Redirect("dinside.asp?UserID=") & intUID
           
        End If
    Else
        ' Hvis der ikke var angivet brugernavn og adgangskode
        strErr = "Du skal skrive både brugernavn og adgangskode"
    End If

    If Len(strErr) > 0 Then
        ' Her laves fejlmeddelsen om til rød skrift
        strErr = "<p><font color=white><font=verdana><font size=1>" & strErr & "</font></p>"
    End If
End If
%>
</head>
<form method="POST" action="default.asp">
<label>
            <input name="Brugernavn" type="text" value="E-mail adresse">
          </label>
          <label>
            <input name="Adgangskode" type="password" value="Adgangskode">
          </label>
<input type="image" src="images/knap_07.gif" value="Login" name="Action">
</form>
</html>
---------------------------------

Hvorfor gider den kun med en almindelig knap?
Avatar billede kgkg Nybegynder
16. januar 2010 - 23:11 #1
Prøv lige at tilknytte en OnClick event som submitter din formular.

Ret: <input type="image" src="images/knap_07.gif" value="Login" name="Action">

til: <input type="image" src="images/knap_07.gif" value="Login" name="Action" onclick="java script:document.formnavn.submit()">

Husk lige at navngive din form.

Du kan også læse her: http://www.webdevelopersnotes.com/tips/html/using_an_image_as_a_submit_button.php3
Avatar billede MrGold Nybegynder
16. januar 2010 - 23:51 #2
den siger ';'-tegnet var ventet. Hvor skal det indføres?
Avatar billede kgkg Nybegynder
17. januar 2010 - 00:07 #3
Kom lige med hele din kode for siden, så jeg kan se den.
Avatar billede MrGold Nybegynder
17. januar 2010 - 00:13 #4
<%
' Hvis der er blevet trykket på knappen "Login"
If Request.Form("Action") = "Login" Then
    ' Her forberedes de indtastede værdier til validering
    strUID = Trim(Replace(Request.Form("Brugernavn"),"'",""))
    strPWD = Trim(Replace(Request.Form("Adgangskode"),"'",""))

    ' Hvis der er skrevet noget i både brugernavn og adgangskode
    If Len(strUID) > 0 And Len(strPWD) > 0 Then

        ' DSNLess forbindelse til databasen
        Set myConn = Server.CreateObject("ADODB.Connection")
        myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("database.mdb")

        ' Opbygning af SQL streng
        strSQL = "SELECT UserID FROM bruger"&_
            " WHERE (profil = '" & strUID & "')"&_
            " AND (adgangskode = '" & strPWD & "')"

        Set rs = myConn.Execute(strSQL)
        If Not (rs.BOF Or rs.EOF) Then
            ' Hvis brugeren fandtes i databasen
            intUID = rs("UserID")
        Else
            ' Hvis brugeren ikke fandtes i databasen
            strERR = "Forkert brugernavn eller adgangskode"
        End If

        ' Rydder op i vores connection objekt
        myConn.Close
        Set myConn = Nothing

        If Len(intUID) Then
            ' Hvis variablen intUID indeholder en værdi sættes denne i sessionen "UserID" og brugeren bliver sendt videre
            Session("UserID") = intUID
            Response.Redirect("dinside.asp?UserID=") & intUID
           
        End If
    Else
        ' Hvis der ikke var angivet brugernavn og adgangskode
        strErr = "Du skal skrive både brugernavn og adgangskode"
    End If

    If Len(strErr) > 0 Then
        ' Her laves fejlmeddelsen om til rød skrift
        strErr = "<p><font color=white><font=verdana><font size=1>" & strErr & "</font></p>"
    End If
End If
%>
<html>
<head>
<title>knap - Community for unge</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
#Table_01 tr td {
    text-align: center;
}
#Table_01 tr td #Table_ tr td p {
    text-align: left;
    font-size: 10px;
    color: #FFF;
    font-family: Verdana, Geneva, sans-serif;
}
#Table_01 tr td #Table_ tr td table tr td {
    font-size: 10px;
    font-family: Verdana, Geneva, sans-serif;
    color: #FFF;
}
#Table_01 tr td p {
    font-size: 10px;
    color: #333;
    font-family: Verdana, Geneva, sans-serif;
}
#Table_01 tr td p {
    color: #666;
}
-->
</style>
</head>
<form method="POST" action="default.asp" name="TEST">
<body bgcolor="black" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<body background="images/bg.jpg">
<center>
<!-- Save for Web Slices (Untitled-2) -->
<table id="Table_01" width="933" height="390" border="0" cellpadding="0" cellspacing="0">
    <tr>
        <td colspan="12">
            <img src="images/knap_01.gif" width="932" height="15" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="15" alt=""></td>
    </tr>
    <tr>
        <td colspan="5" rowspan="2">
            <img src="images/knap_02.gif" width="163" height="54" alt=""></td>
        <td rowspan="2" background="images/knap_03.gif" width="328" height="54" alt="""><%=strErr%>
            </td>
        <td rowspan="3">
            <img src="images/knap_04.gif" width="134" height="55" alt=""></td>
        <td colspan="5" background="images/knap_05.gif" width="307" height="45" alt=""">
         
            <input name="Brugernavn" type="text" value="E-mail adresse">
         
         
            <input name="Adgangskode" type="password" value="Adgangskode">
         
       
          </td>
        <td>
            <img src="images/spacer.gif" width="1" height="45" alt=""></td>
    </tr>
    <tr>
        <td colspan="3">
            <img src="images/knap_06.gif" width="218" height="9" alt=""></td>
        <td colspan="2" rowspan="5">
           
       
        <input type="image" src="images/knap_07.gif" value="Login" name="Action" onclick="java script:document.TEST.submit()"></td>
        <td>
            <img src="images/spacer.gif" width="1" height="9" alt=""></td>
    </tr>
    <tr>
        <td colspan="6">
            <img src="images/knap_08.gif" width="491" height="1" alt=""></td>
        <td colspan="2">
            <img src="images/knap_09.gif" width="75" height="1" alt=""></td>
        <td rowspan="3">
            <img src="images/knap_10.gif" width="143" height="18" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="1" alt=""></td>
    </tr>
    <tr>
        <td rowspan="8">
            <img src="images/knap_11.gif" width="1" height="296" alt=""></td>
        <td colspan="7">
            <img src="images/knap_12.gif" width="691" height="13" alt=""></td>
        <td rowspan="3">
            <img src="images/knap_13.gif" width="8" height="25" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="13" alt=""></td>
    </tr>
    <tr>
        <td colspan="7" rowspan="2">
            <img src="images/knap_14.gif" width="691" height="12" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="4" alt=""></td>
    </tr>
    <tr>
        <td>
            <img src="images/knap_15.gif" width="143" height="8" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="8" alt=""></td>
    </tr>
    <tr>
        <td colspan="4">
            <img src="images/knap_16.gif" width="162" height="20" alt=""></td>
        <td colspan="6" rowspan="5">
            <img src="images/knap_17.gif" width="761" height="271" alt=""></td>
        <td rowspan="5">
            <img src="images/knap_18.gif" width="8" height="271" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="20" alt=""></td>
    </tr>
    <tr>
        <td colspan="2" rowspan="4">
            <img src="images/knap_19.gif" width="9" height="251" alt=""></td>
        <td>
            <img src="images/knap_20.gif" width="145" height="122" alt=""></td>
        <td rowspan="4">
            <img src="images/knap_21.gif" width="8" height="251" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="122" alt=""></td>
    </tr>
    <tr>
        <td>
            <img src="images/knap_22.gif" width="145" height="27" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="27" alt=""></td>
    </tr>
    <tr>
        <td>
            <img src="images/knap_23.gif" width="145" height="68" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="68" alt=""></td>
    </tr>
    <tr>
        <td>
            <img src="images/knap_24.gif" width="145" height="34" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="34" alt=""></td>
    </tr>
    <tr>
        <td colspan="12">
            <img src="images/knap_25.gif" width="932" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="1" alt=""></td>
    </tr>
    <tr>
        <td colspan="2">
            <img src="images/knap_26.gif" width="3" height="2" alt=""></td>
        <td colspan="9">
            <img src="images/knap_27.gif" width="921" height="2" alt=""></td>
        <td>
            <img src="images/knap_28.gif" width="8" height="2" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="2" alt=""></td>
    </tr>
    <tr>
        <td colspan="2" background="images/knap_29.gif" width="3" height="17" alt=""">
            </td>
        <td colspan="9" background="images/knap_30.gif" width="921" height="17" alt="""><table id="Table_" width="907" height="79" border="0" cellpadding="0" cellspacing="0">
          <tr>
            <td background="images/profillinie_01.gif" width="4" height="4" alt="""></td>
            <td colspan="3" background="images/profillinie_02.gif" width="899" height="4" alt="""></td>
            <td background="images/profillinie_03.gif" width="4" height="4" alt="""></td>
          </tr>
          <tr>
            <td background="images/profillinie_04.gif" width="4" height="1" alt="""></td>
            <td colspan="3" background="images/profillinie_05.gif" width="899" height="1" alt="""></td>
            <td background="images/profillinie_06.gif" width="4" height="1" alt="""></td>
          </tr>
          <tr>
            <td background="images/profillinie_07.gif" width="4" height="68" alt="""></td>
            <td colspan="3" background="images/profillinie_08.gif" width="899" height="68" alt="""><table width="905" border="0">
              <tr>
                <td width="6">&nbsp;</td>
                <td width="200" colspan="3">Nyeste billedeprofiler :      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
                <td width="86">&nbsp;</td>
                <td width="86">&nbsp;</td>
                <td width="86">&nbsp;</td>
                <td width="86">&nbsp;</td>
                <td width="86">&nbsp;</td>
                <td width="86">&nbsp;</td>
                <td width="86">&nbsp;</td>
                <td width="10">&nbsp;</td>
                </tr>
              <tr>
                <td>&nbsp;</td>
                <td width="86"><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td width="86"><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td width="86"><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td><img src="images/profilbillede.jpg" alt="" width="56" height="75"></td>
                <td>&nbsp;</td>
                </tr>
              <tr>
                <td>&nbsp;</td>
                <td>Miss Copenhagen</td>
                <td>Miss Copenhagen</td>
                <td>Miss Copenhagen</td>
                <td>Miss Copenhagen</td>
                <td>Miss Copenhagen</td>
                <td>Miss Copenhagen</td>
                <td>Miss Copenhagen</td>
                <td>Miss Copenhagen</td>
                <td>Miss Copenhagen</td>
                <td>Miss Copenhagen</td>
                <td>&nbsp;</td>
                </tr>
            </table></td>
            <td background="images/profillinie_09.gif" width="4" height="68" alt="""></td>
          </tr>
          <tr>
            <td background="images/profillinie_10.gif" width="4" height="1" alt="""></td>
            <td background="images/profillinie_11.gif" width="58" height="1" alt="""></td>
            <td colspan="2" background="images/profillinie_12.gif" width="841" height="1" alt="""></td>
            <td background="images/profillinie_13.gif" width="4" height="1" alt="""></td>
          </tr>
          <tr>
            <td background="images/profillinie_14.gif" width="4" height="4" alt="""></td>
            <td colspan="2" background="images/profillinie_15.gif" width="845" height="4" alt="""></td>
            <td background="images/profillinie_16.gif" width="54" height="4" alt="""></td>
            <td background="images/profillinie_17.gif" width="4" height="4" alt="""></td>
          </tr>
          <tr>
            <td><img src="images/spacer.gif" width="4" height="1" alt=""></td>
            <td><img src="images/spacer.gif" width="58" height="1" alt=""></td>
            <td><img src="images/spacer.gif" width="787" height="1" alt=""></td>
            <td><img src="images/spacer.gif" width="54" height="1" alt=""></td>
            <td><img src="images/spacer.gif" width="4" height="1" alt=""></td>
          </tr>
        </table>          <p> <strong>knap I/S</strong> - <strong>Cvr</strong>: xx-xx-xx-xx - <strong>E-mail</strong>: info@knap.dk - <strong>Tlf</strong>: xx-xx-xx-xx <input type="submit" value="Login" name="Action"></p></td>
        <td background="images/knap_31.gif" width="8" height="17" alt=""">
          </td>
        <td background="images/spacer.gif" width="1" height="17" alt=""">
            </td>
    </tr>
    <tr>
        <td colspan="2" background="images/knap_32.gif" width="3" height="3" alt=""">
            </td>
        <td colspan="9" background="images/knap_33.gif" width="921" height="3" alt="""></td>
        <td>
<img src="images/knap_34.gif" width="8" height="3" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="1" height="3" alt=""></td>
    </tr>
    <tr>
        <td>
            <img src="images/spacer.gif" width="1" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="2" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="7" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="145" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="8" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="328" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="134" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="67" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="8" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="143" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="81" height="1" alt=""></td>
        <td>
            <img src="images/spacer.gif" width="8" height="1" alt=""></td>
        <td></td>
    </tr>
</table>
</center>

</form>
<!-- End Save for Web Slices -->
</body>
</html>
Avatar billede kgkg Nybegynder
17. januar 2010 - 00:24 #5
Du har skrevet: java script:document.TEST.submit()

java script er i et ord, så der skal stå javascript
Avatar billede MrGold Nybegynder
17. januar 2010 - 00:32 #6
Det fjernede ihvertfald fejlen med, at der skulle stå et ';'-tegn. Men den sender mig stadig ikke videre til næste side. den almindelige formknap jeg har lavet i bunden af siden fungerer udmærket. Det sku lidt underligt. Mon det skal defineres i toppen at det er et billede istedet for en knap?
Avatar billede kgkg Nybegynder
17. januar 2010 - 00:45 #7
Prøv af ændre:

<form method="POST" action="default.asp" name="TEST">

til

<form method="POST" action="default.asp?mode=login" name="TEST">

og

If Request.Form("Action") = "Login" Then

til

If Request.QueryString("mode") = "login" Then
Avatar billede MrGold Nybegynder
17. januar 2010 - 00:52 #8
Så virker hverken billede-knappen eller den almindelige formknap.

Men hvis man requester querystring, så kræver det vel der er en forudgående streng med navnet login.. og det er der jo ikke da default.asp er selve start siden og der ikke er nogen forudgående handling der har lavet en querystring med værdien loogin
Avatar billede kgkg Nybegynder
17. januar 2010 - 01:00 #9
Har du rettet action til det jeg skrev og reloaded siden.

Jeg får fejlen:

Microsoft OLE DB Provider for ODBC Drivers fejl '80004005'

[Microsoft][ODBC Microsoft Access-driver] Filen "(ukendt)" kan ikke findes.

/default.asp, linje 14

når jeg klikker på image knappen og login knappen, hvilket er klart, da jeg ikke har databasen og stien til den sat op på min computer, men det betyder at ASP koden kaldes og mode=login
Avatar billede MrGold Nybegynder
17. januar 2010 - 01:07 #10
Arh :) Nu virker det sku! .. dit svar #7 virker helt efter hensigten. Jeg havde bare kommet til at skrive 'Login' istedet for 'login' - altså med et stort L.

Tak for hjælpen, smid bare et svar :)
Avatar billede kgkg Nybegynder
17. januar 2010 - 01:13 #11
Hermed et svar.

he, he. Ja testen er jo case sentisiv.

Jeg tester som regel altid i uppercase, så jeg burde måske have skrevet:

if UCase(Request.QueryString("mode")) = "LOGIN" Then

Så slipper man for disse bøffer...
Avatar billede muddi Praktikant
17. januar 2010 - 01:15 #12
Du kan evt bare bruge CSS på <input type=submit>, i stedet for <input type=image>.

http://www.ahfb2000.com/webmaster_help_desk/showthread.php?t=2192
Se sidste svar ;)
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