Frågan 17 dec. 2003 16:17 #1 Hejsan!
har ett problem..
denna kod:
RecSet.AddNew
RecSet("anv")=request.form("anv")
RecSet("los")=request.form("los")
RecSet("rekryt")=request.form("rek")
RecSet.Update
RecSet.Close
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("databas/databas.mdb")
sql = "Update anv Set antalrek = antalrek + "& 1 &" Where anv= '"& request.form("rek") &"' "
Connect.Execute(sql),,128
Connect.Close
Set Connect = Nothing
Det där med att jag vill att den ska uppdatera antalrek.. det gör den inte.. varför?
Jesper T Medlem sedan nov. 2001 7 144 inlägg sql = "Update anv Set antalrek = antalrek + 1 Where anv= '"& request.form("rek") &"'"
Jesper T skrev:
sql = "Update anv Set antalrek = antalrek + 1 Where anv= '"& request.form("rek") &"'"
Har lagt in den, men den uppdaterar ändå inte :S vet ej varför.. någon som vet?
@nders Medlem sedan juni 2000 32 967 inlägg Visa hur din kod ser ut nu.
@nders skrev:
Visa hur din kod ser ut nu.
här kommer den...
Addera = "Select * From anv "
RecSet.Open Addera, Connect, 3, 3
RecSet.AddNew
RecSet("anv")=request.form("anv")
RecSet("los")=request.form("los")
RecSet("rekryt")=request.form("rek")
RecSet("reggad")=now
RecSet("alder") = "00:00:00"
RecSet("hemsida") ="Okänt"
RecSet("bor") ="Okänt"
RecSet("kon") ="Okänt"
RecSet("civil") ="Okänt"
RecSet("msn") ="Okänt"
RecSet("namn") ="Okänt"
RecSet("bild") ="bilder/1.jpg"
RecSet.Update
RecSet.Close
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("databas/databas.mdb")
sql = "Update anv Set antalrek = antalrek + 1 Where anv= '"& request.form("rek") &"'"
Connect.Execute(sql),,128
Connect.Close
Set Connect = Nothing
Hajjar du?
mikul Medlem sedan aug. 2001 3 824 inlägg Det är inte så klyfftigt att öppna ett redan öppet objekt.
RecSet.Open Addera, [b]Connect[/b], 3, 3
Set [b]Connect[/b] = Server.CreateObject("ADODB.Connection")
[b]Connect[/b].Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("databas/databas.mdb")
Måste äta nu... Men visa lite mer kod, även formulärkoden...
Plus att du kan testa att skriva ut sql-frågan med response.write för att lättare kunna hitta felet...
Okej, här kommer lite kod:
Formuläret:
<form name="form1" method="post" action="spara_medlemr.asp" onsubmit="return checkCheckBox(this)">
<b>Användarnamn:<br>
<input name="anv" type="text" id="anv" class=ruta onChange="javascript:this.value=this.value.toHigherCase();" onBlur="validate(this)" size="20">
<br>
</b><i>(4-12 tecken)</i><b><br>
Lösen:<br>
<input name="los" type="password" id="los" class=ruta onBlur="validate(this)" size="20">
<input name="rek" type="hidden" size="20" value="<%=vem%>">
<br>Jag accepterar:
<input type="checkbox" value="0" name="agree"><br>
<input type="submit" name="Submit" value="Spara" class=ruta>
<input type="button" value="Avbryt" onclick="document.location.href='index.asp';">
</b>p>
</form>
Sen bifogar jag hela spara_medlemr.asp.. inte så mycke kod, enbast ASP iallafall.. jätte tacksam om ni kan lista ut vad jag gör för fel.. Tack!
Mvh Adde
mikul Medlem sedan aug. 2001 3 824 inlägg Hur såg sqlfrågan ut om du skrev ut den?
'Connect
SQL = "Select * From anv "
RecSet.Open SQL, Connect, 3, 3
RecSet.AddNew
RecSet("anv")=request.form("anv")
RecSet("los")=request.form("los")
RecSet("rekryt")=request.form("rek")
RecSet("reggad")=now
RecSet("alder") = "00:00:00"
RecSet("hemsida") ="Okänt"
RecSet("bor") ="Okänt"
RecSet("kon") ="Okänt"
RecSet("civil") ="Okänt"
RecSet("msn") ="Okänt"
RecSet("namn") ="Okänt"
RecSet("bild") ="bilder/1.jpg"
RecSet.Update
RecSet.Close
sql = "Update anv Set antalrek = antalrek + 1 Where anv= '"& request.form("rek") &"'"
Response.write(SQL)
Response.end()
Connect.Execute(sql),,128
Connect.Close
Set Connect = Nothing
mikul skrev:
Hur såg sqlfrågan ut om du skrev ut den?
'Connect
SQL = "Select * From anv "
RecSet.Open SQL, Connect, 3, 3
RecSet.AddNew
RecSet("anv")=request.form("anv")
RecSet("los")=request.form("los")
RecSet("rekryt")=request.form("rek")
RecSet("reggad")=now
RecSet("alder") = "00:00:00"
RecSet("hemsida") ="Okänt"
RecSet("bor") ="Okänt"
RecSet("kon") ="Okänt"
RecSet("civil") ="Okänt"
RecSet("msn") ="Okänt"
RecSet("namn") ="Okänt"
RecSet("bild") ="bilder/1.jpg"
RecSet.Update
RecSet.Close
sql = "Update anv Set antalrek = antalrek + 1 Where anv= '"& request.form("rek") &"'"
Response.write(SQL)
Response.end()
Connect.Execute(sql),,128
Connect.Close
Set Connect = Nothing
Så här:
Update anv Set antalrek = antalrek + 1 Where anv= 'Thomsson'
mikul Medlem sedan aug. 2001 3 824 inlägg Testa detta en gång:
'Connect
sqlInsert = "[b]insert[/b] into anv(anv, los, rekryt, reggad, alder, hemsida, bor, kon, civil, msn, namn, bild)"_
& " Values('"& request.form("anv") &"', '"& request.form("los") &"', '"& request.form("rek") &"', '"& now() &"',"_
& "'okänt', 'okänt', 'okänt', 'okänt', 'okänt', 'okänt', 'bilder/1.jpg');"
sqlUpdate = "Update anv Set antalrek = cInt(antalrek + 1) Where trim(lcase(anv) = '"& trim(lcase(request.form("rek"))) &"';"
Connect.Execute(sqlInsert),,128
Connect.Execute(sqlUpdate),,128
'Response.write(SQL)
'Response.end()
Connect.Execute(sql),,128
Connect.Close
Set Connect = Nothing
mikul skrev:
Testa detta en gång:
'Connect
sqlInsert = "inser into anv(anv, los, rekryt, reggad, alder, hemsida, bor, kon, civil, msn, namn, bild)"_
& " Values('"& request.form("anv") &"', '"& request.form("los") &"', '"& request.form("rek") &"', '"& now() &"',"_
& "'okänt', 'okänt', 'okänt', 'okänt', 'okänt', 'okänt', 'bilder/1.jpg');"
sqlUpdate = "Update anv Set antalrek = cInt(antalrek + 1) Where trim(lcase(anv) = '"& trim(lcase(request.form("rek"))) &"';"
Connect.Execute(sqlInsert),,128
Connect.Execute(sqlUpdate),,128
'Response.write(SQL)
'Response.end()
Connect.Execute(sql),,128
Connect.Close
Set Connect = Nothing
Nytt fel:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Number of query values and destination fields are not the same.
/2/spara_medlemr.asp, line 36
mikul Medlem sedan aug. 2001 3 824 inlägg Kolla igen, har redigerat koden ;)
mikul Medlem sedan aug. 2001 3 824 inlägg Missade ett fält... Kan ha med dyslexin att göra ;)
'Connect
sqlInsert = "[b]insert[/b] into anv(anv, los, rekryt, reggad, alder, hemsida, bor, kon, civil, msn, namn, bild)"_
& " Values('"& request.form("anv") &"', '"& request.form("los") &"', '"& request.form("rek") &"', '"& now() &"',"_
& "'00:00:00', 'okänt', 'okänt', 'okänt', 'okänt', 'okänt', 'okänt', 'bilder/1.jpg');"
sqlUpdate = "Update anv Set antalrek = cInt(antalrek + 1) Where trim(lcase(anv)) = '"& trim(lcase(request.form("rek"))) &"';"
Connect.Execute(sqlInsert),,128
Connect.Execute(sqlUpdate),,128
'Response.write(SQL)
'Response.end()
Connect.Execute(sql),,128
Connect.Close
Set Connect = Nothing