Avatar billede d797fni Nybegynder
23. marts 2001 - 16:15 Der er 9 kommentarer og
1 løsning

opdatere data forkert

Jeg kan ikke overskue det længere !!!

Der er en fejl i dette, den opdatere dataen fra træningskampen både som pokal kamp og træningskamp, samt den siger der er fejl i min UPDATE sætning.

Er der en med friske øjne som kan hjælpe !!




<%
if session(\"login\") = 1 then

set DB = Server.CreateObject(\"ADODB.Connection\")
      DB.open \"Driver={Microsoft Access Driver (*.mdb)};\"&_
      \"DBQ=\"&server.mappath(\"trippendales.mdb\")&\";\"&_
      \"DefaultDir=\"&server.mappath(\"./\")&\";FIL=MS Access;\"

    strHold = Request.querystring(\"hold\")
    strKamp = Request.querystring(\"kamp\")
   
If Request(\"Action\") = \"Send\" Then
           
   
    SQL5 = \"Select count(*) as Antal from fct\"
            Set RS5 = DB.Execute(SQL5)
            b=RS5(\"Antal\")
   
   
       
   
\'OPDATERE HVER SPILLER SOM HAR VÆRET MED I EN TURNERINGSKAMP....


if Request.querystring(\"kamp\")=\"turn\" then
    if Len(Request(\"hj_res\")) <> 0 AND Len(Request(\"ude_res\")) <> 0 then

        \'OPDATERER KAPRESULTATET
        SQL7=\"Update kampe\"&Request.querystring(\"hold\")&\" Set  hj_res =\"&Request(\"hj_res\")&\", ude_res=\"&Request(\"ude_res\")&\" where id=\"&Request(\"Hjem\")
        DB.execute(SQL7)

        for a= 1 to b
                if Request.form(\"del_\"&a&\"\")=\"ON\" then

                    if Request(\"maal\"&a&\"\")=\"\" then
                        maal=0
                    else
                        maal=Request(\"maal\"&a&\"\")
                    end if               

                    if Request(\"100_\"&a&\"\")=\"\" then
                        str100=0
                    else
                        str100=Request(\"100_\"&a&\"\")
                    end if               

                    if Request(\"drop\"&a&\"\")=\"\" then
                        drop=0
                    else
                        drop=Request(\"drop\"&a&\"\")
                    end if               
               
                    SQL12=\"Select * from kampe\"&Request.querystring(\"hold\")&\" where id=\"&Request(\"hjem\")
                    set RS12 = DB.execute(SQL12)
               
                    SQL6 = \"SELECT * FROM runde\"&Request(\"hjem\")&\"_\"&Request.querystring(\"hold\")
                    Set DB1 = Server.CreateObject(\"ADODB.Recordset\")
                    DB1.Open SQL6, DB, 3, 3
                    DB1.AddNew
                    DB1(\"id\")=a
                    DB1(\"maal\")=maal
                    DB1(\"100\")=str100
                    DB1(\"Drop\")=drop
                    DB1(\"sent\")=Request(\"sent\"&a&\"\")
                    DB1(\"rodt\")=Request(\"rodt\"&a&\"\")
                    DB1(\"gult\")=Request(\"gult\"&a&\"\")
                    DB1(\"div\")=Request(\"div\"&a&\"\")
   
                    if RS12(\"hjemme\")=\"Trippendales\" then
                        maal_imod=Request.form(\"ude_res\")
                    else
                        maal_imod=Request.form(\"hj_res\")
                    end if
   
                    DB1(\"maal_imod\")=maal_imod
                    intIalt=maal_imod*3+str100*10+drop*10+Request(\"sent\"&a&\"\")*Request(\"sent\"&a&\"\")*3+Request(\"rodt\"&a&\"\")*50+Request(\"gult\"&a&\"\")*20+Request(\"div\"&a&\"\")
                    DB1(\"ialt\")=intIalt
                    DB1.update
                   
                    strSQL = \"SELECT * FROM skylder Where id=\"&a
                    set RS8 = DB.execute(strSQL)
                   
                    if RS8.eof then
                        strSQL1 = \"SELECT * FROM skylder\"
                        Set DB1 = Server.CreateObject(\"ADODB.Recordset\")
                        DB1.Open strSQL1, DB, 3, 3
                        DB1.AddNew
                        DB1(\"id\")=a
                        DB1(\"ialt\")=intIalt
                        DB1(\"maal\")=maal
                        DB1(\"100\")=str100
                        DB1(\"Drop\")=drop
                        DB1(\"sent\")=Request(\"sent\"&a&\"\")
                        DB1(\"rodt\")=Request(\"rodt\"&a&\"\")
                        DB1(\"gult\")=Request(\"gult\"&a&\"\")
                        DB1(\"div\")=Request(\"div\"&a&\"\")
                        DB1(\"maal_imod\")=Request.form(\"ude_res\")
                        DB1.update
                    else
                        SQL10 = \"Select * From skylder where id=\"&a
                        Set RS10 = DB.Execute(SQL10)
                        skylder=RS10(\"ialt\")+intIalt
                        maalialt=RS10(\"maal\")+maal
                        str100ialt=RS10(\"100\")+str100
                        dropialt=RS10(\"drop\")+drop
                        sentialt=RS10(\"sent\")+Request(\"sent\"&a&\"\")
                        rodtialt=RS10(\"rodt\")+Request(\"rodt\"&a&\"\")
                        gultialt=RS10(\"gult\")+Request(\"gult\"&a&\"\")
                        divialt=RS10(\"div\")+Request(\"div\"&a&\"\")
                        maal_imodialt=RS10(\"maal_imod\")+Request(\"ude_res\")
                        betalt=RS10(\"betalt\")
                        SQL9=\"Update skylder Set ialt=\'\"&skylder&\"\', betalt=\'\"&betalt&\"\', maal=\'\"&maalialt&\"\', 100=\'\"&str100ialt&\"\', drop=\'\"&dropialt&\"\', sent=\'\"&sentialt&\"\', rodt=\'\"&rodtialt&\"\', gult=\'\"&gultialt&\"\', div=\'\"&divialt&\"\', maal_imod=\'\"&maal_imodialt&\"\' where id=\"&a
                        DB.execute(SQL9)
                    end if
                end if
            next
        else
            strErr=\"Du mangler at udfylde resultatet i denne turneringskamp\"
        end if

end if
       
       
       
\'OPDATERE HVER SPILLER SOM HAR VÆRET MED I EN POKALKAMP....

if Request.querystring(\"kamp\")=\"pok\" then
    \'if Len(Request(\"pokal_modst\")) <> 0 AND Len(Request(\"hj_res_pok\")) <> 0 AND Len(Request(\"ude_res_pok\")) <> 0 AND Len(Request(\"dato_pok\")) <> 0 then

        SQL18 = \"SELECT * FROM pokal\"
                    Set DB1 = Server.CreateObject(\"ADODB.Recordset\")
                    DB1.Open SQL18, DB, 3, 3
                    DB1.AddNew
                   
                    DB1(\"modstander\")=Request(\"pokal_modst\")
                    DB1(\"trip_res\")=Request(\"hj_res_pok\")
                    DB1(\"mod_res\")=Request(\"ude_res_pok\")
                    DB1(\"dato\")=Request(\"dato_pok\")
                    DB1.update

           
                   
            for a= 1 to b
                if Request.form(\"del_\"&a&\"\")=\"ON\" then
   
                if Request(\"maal\"&a&\"\")=\"\" then
                    maal=0
                else
                    maal=Request(\"maal\"&a&\"\")
                end if               

                if Request(\"100_\"&a&\"\")=\"\" then
                    str100=0
                else
                    str100=Request(\"100_\"&a&\"\")
                end if               

                if Request(\"drop\"&a&\"\")=\"\" then
                    drop=0
                else
                    drop=Request(\"drop\"&a&\"\")
                end if   
               
        SQL181=\"SELECT top 1 * FROM pokal order by id DESC\"
        set RS181 = DB.execute(SQL181)               

        SQL19 = \"SELECT * FROM runde_pokal\"
                    Set DB1 = Server.CreateObject(\"ADODB.Recordset\")
                    DB1.Open SQL19, DB, 3, 3
                    DB1.AddNew
                    DB1(\"id\")=a
                    DB1(\"maal\")=maal
                    DB1(\"100\")=str100
                    DB1(\"Drop\")=drop
                    DB1(\"sent\")=Request(\"sent\"&a&\"\")
                    DB1(\"rodt\")=Request(\"rodt\"&a&\"\")
                    DB1(\"gult\")=Request(\"gult\"&a&\"\")
                    DB1(\"div\")=Request(\"div\"&a&\"\")
                    DB1(\"maal_imod\")=Request.form(\"ude_res_pok\")
                    DB1(\"kamp_id\")=RS181(\"id\")
                    maal_imod=Request(\"ude_res_pok\")
                    intIalt=maal_imod*3+str100*10+drop*10+Request(\"sent\"&a&\"\")*Request(\"sent\"&a&\"\")*3+Request(\"rodt\"&a&\"\")*50+Request(\"gult\"&a&\"\")*20+Request(\"div\"&a&\"\")
                    DB1(\"ialt\")=intIalt
                    DB1.update
                   
                                       
                    strSQL = \"SELECT * FROM skylder Where id=\"&a
                    set RS8 = DB.execute(strSQL)
                   
                    if RS8.eof then
                        strSQL1 = \"SELECT * FROM skylder\"
                        Set DB1 = Server.CreateObject(\"ADODB.Recordset\")
                        DB1.Open strSQL1, DB, 3, 3
                        DB1.AddNew
                        DB1(\"id\")=a
                        DB1(\"ialt\")=intIalt
                        DB1(\"maal\")=maal
                        DB1(\"100\")=str100
                        DB1(\"Drop\")=drop
                        DB1(\"sent\")=Request(\"sent\"&a&\"\")
                        DB1(\"rodt\")=Request(\"rodt\"&a&\"\")
                        DB1(\"gult\")=Request(\"gult\"&a&\"\")
                        DB1(\"div\")=Request(\"div\"&a&\"\")
                        DB1(\"maal_imod\")=Request(\"ude_res_pok\")
                        DB1.update
                    else
                        SQL10 = \"Select * From skylder where id=\"&a
                        Set RS10 = DB.Execute(SQL10)
                        skylder=RS10(\"ialt\")+intIalt
                        maalialt=RS10(\"maal\")+maal
                        str100ialt=RS10(\"100\")+str100
                        dropialt=RS10(\"drop\")+drop
                        sentialt=RS10(\"sent\")+Request(\"sent\"&a&\"\")
                        rodtialt=RS10(\"rodt\")+Request(\"rodt\"&a&\"\")
                        gultialt=RS10(\"gult\")+Request(\"gult\"&a&\"\")
                        divialt=RS10(\"div\")+Request(\"div\"&a&\"\")
                        maal_imodialt=RS10(\"maal_imod\")+Request(\"ude_res_traen\")
                        betalt=RS10(\"betalt\")
                        SQL9=\"Update skylder Set ialt=\"&skylder&\", betalt=\"&betalt&\", maal=\"&maalialt&\", 100=\"&str100ialt&\", drop=\"&dropialt&\", sent=\"&sentialt&\", rodt=\"&rodtialt&\", gult=\"&gultialt&\", div=\"&divialt&\", maal_imod=\"&maal_imodialt&\" where id=\"&a
                        DB.execute(SQL9)

                       
                    end if

                end if
            next
                    strErr=\"\"
    \'else

    \'    strErr=\"Du mangler at udfylde et eller flere felter i denne pokalkamp\"
    \'end if
end if




\'OPDATERE HVER SPILLER SOM HAR VÆRET MED I EN TRÆNINGSSKAMP....

if Request.querystring(\"kamp\")=\"traen\" then
    \'if Len(Request(\"traen_modst\")) <> 0 AND Len(Request(\"hj_res_traen\")) <> 0 AND Len(Request(\"ude_res_traen\")) <> 0 AND Len(Request(\"dato_traen\")) <> 0 then

        SQL16 = \"SELECT * FROM traen\"
                    Set DB1 = Server.CreateObject(\"ADODB.Recordset\")
                    DB1.Open SQL16, DB, 3, 3
                    DB1.AddNew
                   
                    DB1(\"modstander\")=Request(\"traen_modst\")
                    DB1(\"trip_res\")=Request(\"hj_res_traen\")
                    DB1(\"mod_res\")=Request(\"ude_res_traen\")
                    DB1(\"dato\")=Request(\"dato_traen\")
                    DB1.update

           
                   
            for a= 1 to b
                if Request.form(\"del_\"&a&\"\")=\"ON\" then
   
                if Request(\"maal\"&a&\"\")=\"\" then
                    maal=0
                else
                    maal=Request(\"maal\"&a&\"\")
                end if               

                if Request(\"100_\"&a&\"\")=\"\" then
                    str100=0
                else
                    str100=Request(\"100_\"&a&\"\")
                end if               

                if Request(\"drop\"&a&\"\")=\"\" then
                    drop=0
                else
                    drop=Request(\"drop\"&a&\"\")
                end if   
               
               
               
        SQL161=\"SELECT top 1 * FROM traen order by id DESC\"
        set RS161 = DB.execute(SQL161)               

        SQL17 = \"SELECT * FROM runde_traen\"
                    Set DB1 = Server.CreateObject(\"ADODB.Recordset\")
                    DB1.Open SQL17, DB, 3, 3
                    DB1.AddNew
                    DB1(\"id\")=a
                    DB1(\"maal\")=maal
                    DB1(\"100\")=str100
                    DB1(\"Drop\")=drop
                    DB1(\"sent\")=Request(\"sent\"&a&\"\")
                    DB1(\"rodt\")=Request(\"rodt\"&a&\"\")
                    DB1(\"gult\")=Request(\"gult\"&a&\"\")
                    DB1(\"div\")=Request(\"div\"&a&\"\")
                    DB1(\"maal_imod\")=Request(\"ude_res_traen\")
                    DB1(\"kamp_id\")=RS161(\"id\")
                    maal_imod=Request(\"ude_res_traen\")
                    intIalt=maal_imod*3+str100*10+drop*10+Request(\"sent\"&a&\"\")*Request(\"sent\"&a&\"\")*3+Request(\"rodt\"&a&\"\")*50+Request(\"gult\"&a&\"\")*20+Request(\"div\"&a&\"\")
                    DB1(\"ialt\")=intIalt
                    DB1.update
                   
                    strSQL = \"SELECT * FROM skylder Where id=\"&a
                    set RS8 = DB.execute(strSQL)
                   
                    if RS8.eof then
                        strSQL1 = \"SELECT * FROM skylder\"
                        Set DB1 = Server.CreateObject(\"ADODB.Recordset\")
                        DB1.Open strSQL1, DB, 3, 3
                        DB1.AddNew
                        DB1(\"id\")=a
                        DB1(\"ialt\")=intIalt
                        DB1(\"maal\")=maal
                        DB1(\"100\")=str100
                        DB1(\"Drop\")=drop
                        DB1(\"sent\")=Request(\"sent\"&a&\"\")
                        DB1(\"rodt\")=Request(\"rodt\"&a&\"\")
                        DB1(\"gult\")=Request(\"gult\"&a&\"\")
                        DB1(\"div\")=Request(\"div\"&a&\"\")
                        DB1(\"maal_imod\")=Request(\"ude_res_traen\")
                        \'Request(\"ude_res_traen\")
                        DB1.update
                    else
                        SQL10 = \"Select * From skylder where id=\"&a
                        Set RS10 = DB.Execute(SQL10)
                        skylder=RS10(\"ialt\")+intIalt
                        maalialt=RS10(\"maal\")+maal
                        str100ialt=RS10(\"100\")+str100
                        dropialt=RS10(\"drop\")+drop
                        sentialt=RS10(\"sent\")+Request(\"sent\"&a&\"\")
                        rodtialt=RS10(\"rodt\")+Request(\"rodt\"&a&\"\")
                        gultialt=RS10(\"gult\")+Request(\"gult\"&a&\"\")
                        divialt=RS10(\"div\")+Request(\"div\"&a&\"\")
                        maal_imodialt=RS10(\"maal_imod\")+Request(\"ude_res_traen\")
                        betalt=RS10(\"betalt\")

                        SQL9=\"Update skylder Set ialt=\"&skylder&\", betalt=\"&betalt&\", maal=\"&maalialt&\", 100=\"&str100ialt&\", drop=\"&dropialt&\", sent=\"&sentialt&\", rodt=\"&rodtialt&\", gult=\"&gultialt&\", div=\"&divialt&\", maal_imod=\"&maal_imodialt&\" where id=\"&a
                        DB.execute(SQL9)
                       
                    end if

                end if
            next
                    strErr=\"\"
        \'else

        \'strErr=\"Du mangler at udfylde et eller flere felter i denne træningskamp\"
    \'end if
end if



response.write(\"<font color=\"\"red\"\">\"&strErr&\"</font>\")
end if






If Request.Form(\"Action\") = \"Vælg\" Then

    SQL5 = \"Select count(*) as Antal from fct\"
            Set RS5 = DB.Execute(SQL5)
            b=RS5(\"Antal\")
    strString=\"&\"
    for q=1 to b

    if Request.form(\"del_\"&q&\"\")=\"ON\" then

    strString=\"\"&strString&\"id_\"&q&\"=ok&\"
    end if
    next
    response.redirect(\"bodekasse.asp?valgt=ja\"&strString&\"hold=1&kamp=\"&Request(\"R1\"))

end if

%>
Avatar billede dudal Nybegynder
23. marts 2001 - 18:06 #1
Kan du ikke lige finde ud af hvilken linie fejlen opstår i, og så poste det der står omkring den linie... Der er ikke nogen som har en kinamands chance for at finde en fejl et eller andet sted i 200 liniers kode uden at vide ca hvor den er.. :-)

/Jesper
Avatar billede d797fni Nybegynder
23. marts 2001 - 18:11 #2
Jesper:

Desværre, hvis jeg vidste hvor fejlen var havde jeg måske selv kunne rette dem.

Jeg ved godt det er uoverskueligt, men mine øjne er gået kolde !!
Avatar billede dudal Nybegynder
23. marts 2001 - 18:13 #3
Når du får en fejl kommer der til at stå et linienummer ved fejlmeddelselsen. Kan du ikke prøve at paste hele fejlmeddelelsen her?

/Jesper
Avatar billede d797fni Nybegynder
23. marts 2001 - 18:18 #4
Blandet andet skriver den

syntax error in UPDATE statement.


En anden fejl kan browseren ikke opdage..

Problemet er at det handler om en bødekasse, hvor man først vælge de spillere som har været med, samt kamptype (træningskamp, pokalkamp eller turneringskamp).

I turneringskamp er alle kampene på forhånd tastet ind.

Problemet kommer nu hvor jeg prøver at taste en træningskamp ind, så opdatere den det i både tabellen for pokalkampe og træningskampe, samtidig har jeg en tabel som holder styr på alle spillernes samlede bøder........

desuden vil den ikke opdatere den variabel som hedder maal_imod, den sætter den til ingenting, hvilket jeg tror er fordi den hente scoren fra et forkert tekstfelt........????

\"#%¤%#\"%#\"¤&%\"%&%&¤\"!!!!
Avatar billede nute Nybegynder
23. marts 2001 - 18:22 #5
bare litt nyskjerrig...har du mange tabeller som heter noe med \'kampe...\' ? denne updatestatement krever iallefall at du har endel tabeller:

SQL7=\"Update kampe\"&Request.querystring(\"hold\")&\" Set  hj_res =\"&Request(\"hj_res\")&\", ude_res=\"&Request(\"ude_res\")&\" where id=\"&Request(\"Hjem\")

en annen ting er at du skal sette \' rundt de verdiene du setter inn i felt som inneholder strenger. (noe som du ikke er konsistent med...noen steder gjør du det, mans andre steder gjør du det ikke )

/nute
       
Avatar billede nute Nybegynder
23. marts 2001 - 18:23 #6
(( du legger altfor mye funksjonalitet inn i en fil...det er umulig å overskue det når du skal debugge det ))
Avatar billede d797fni Nybegynder
23. marts 2001 - 18:33 #7
Jeg har kampe1 og kampe 2 !

Den ovenstående UPDATE skaber ingen problemer, desuden er det tal jeg indsætter......
Avatar billede nute Nybegynder
23. marts 2001 - 18:38 #8
mitt tips er å flytte endel funksjonalitet ut i andre filer...da har du lettere styr på hvor ting går galt og hva som går galt....

/nute
Avatar billede torbenkoch Nybegynder
23. marts 2001 - 20:15 #9
Et par gode råd angående skrivning af læsbar kode:

1. Brug mellemrum.
2. Brug store og små bogstaver i variable.

Følgende:

SQL9=\"Update skylder Set ialt=\"&skylder&\", betalt=\"&betalt&\", maal=\"&maalialt&\", 100=\"&str100ialt&\", drop=\"&dropialt&\", sent=\"&sentialt&\", rodt=\"&rodtialt&\", gult=\"&gultialt&\", div=\"&divialt&\", maal_imod=\"&maal_imodialt&\" where id=\"&a

Kan med fordel ændres til:

SQL9 = \"Update skylder Set IAlt=\" & Skylder & \",
Betalt = \" & Betalt & \", Maal = \" & MaalIalt & \",
100 = \" & Str100Ialt & \", Drop = \" & DropIalt
& \", Sent=\" & SentIalt & \", Rodt = \" & RodtIalt
& \", gult = \" & GultIalt & \", div = \" &
DivIalt & \", Maal_Imod = \" & Maal_ImodIalt &
\" where id = \" & a

Meget nemmere at læse og det ser så ud til, at der er noget galt, der hvor der står:

100 = \" & Str100Ialt & \"

Det må da være en fejl! Den vil sikkert give en syntax error i hvert fald!
Avatar billede d797fni Nybegynder
23. april 2001 - 08:56 #10
Har lavet det helt om.......
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