Avatar billede dm013 Nybegynder
21. januar 2002 - 21:58 Der er 33 kommentarer og
1 løsning

Jeg er enten for træt, syg eller dum til at finde fejlen

take your pick :)

når brugeren trykker på ret knappen >>>
<form name=\"form2\" method=\"post\" form action=\'ret_medlem.asp\'>

ret_medlem.asp>>>>>

<%
if isEmpty(Session(\"UserID\")) Then
Response.Redirect(\"login.asp\")
End If
Session(\"UserName\")
%>

<% response.buffer = true %>

<%
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"madkulten.mdb\")
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open strDSN
%>

<%
sql = \"UPDATE Users SET Dato =\'\" & request.form(\"Nydato\") &\"\'\"
sql = sql & \", Fornavn= \'\" & request.form(\"Fornavn\") &\"\'\"
sql = sql & \", Efternavn= \'\" & request.form(\"Efternavn\") &\"\'\"
sql = sql & \", Adresse= \'\" & request.form(\"Adresse\") &\"\'\"
sql = sql & \", Telefon= \'\" & request.form(\"Telefon\") &\"\'\"
sql = sql & \", Mobil= \'\" & request.form(\"Mobil\") &\"\'\"
sql = sql & \", Mobil1= \'\" & request.form(\"Mobil1\") &\"\'\"
sql = sql & \", Email= \'\" & request.form(\"Email\") &\"\'\"
sql = sql & \", Email1= \'\" & request.form(\"Email1\") &\"\'\"
sql = sql & \", Foedselsdato= \'\" & request.form(\"Foedselsdato\") &\"\'\"
sql = sql & \", Postnr= \'\" & request.form(\"Postnr\") &\"\'\"
sql = sql & \", By= \'\" & request.form(\"By\") &\"\'\"
sql = sql & \"WHERE UserID= \" & Session(\"UserID\")   
Set rs = Conn.Execute (sql)
Conn.Close
%>

<% response.redirect (\"medlemsliste.asp\")%>

dm013
Avatar billede earp Nybegynder
21. januar 2002 - 22:00 #1
hvad sker der når du kører d?
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:01 #2
Avatar billede hojben Novice
21. januar 2002 - 22:02 #3
da man ik er logget ind får man http://www.madkulten.dk/login.asp
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:03 #4
riber

65710280
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:03 #5
bruger

adgangskode
Avatar billede earp Nybegynder
21. januar 2002 - 22:05 #6
form action skal rettes til action,

altså:

<form name=\"form2\" method=\"post\" action=\'ret_medlem.asp\'>
Avatar billede coltau Juniormester
21. januar 2002 - 22:07 #7
Skal der lige et space ind før WHERE.

sql = sql & \"WHERE UserID= \" & Session(\"UserID\")
sql = sql & \" WHERE UserID= \" & Session(\"UserID\")   

ellers skal du være sikker på at alle felter i formen er udfyldt med et eller andet valid.
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:09 #8
Må der ingen blanke felter være ?????
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:13 #9
Stadig samme fejl
Avatar billede coltau Juniormester
21. januar 2002 - 22:14 #10
Jo. Jeg mener at der skal være et space før WHERE. Det er der ikke her:

sql = sql & \", By= \'\" & request.form(\"By\") &\"\'\"
sql = sql & \"WHERE UserID= \" & Session(\"UserID\")   

men her:

sql = sql & \", By= \'\" & request.form(\"By\") &\"\'\"
sql = sql & \" WHERE UserID= \" & Session(\"UserID\")   
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:19 #11
sql = sql & \" WHERE UserID= \" & Session(\"UserID\")    har jeg rettet, men stadig fejl
Avatar billede coltau Juniormester
21. januar 2002 - 22:19 #12
Jeg misforstod.
Nej der må ikke tildeles blanke værdier til felter i en UPDATE-sætning så skal man anvende denne tildeling:

By=null
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:21 #13
kan jeg lave en søgning på om der er nogen af felterne som er tomme og så sætte dem til null ?
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:23 #14
Eller evt. sætte en standardværdi = none
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:25 #15
selvom jeg udfylder alle felter kommer fejlen
Avatar billede coltau Juniormester
21. januar 2002 - 22:39 #16
Øv.!
Avatar billede dm013 Nybegynder
21. januar 2002 - 22:43 #17
You said it,

har du evt. flere forslag
Avatar billede coltau Juniormester
21. januar 2002 - 22:48 #18
DEBUG.
Det er svært i ASP-kode. Men prøv lige at fjerne UPDATE-sætningen for at se om fejlen stadigvæk opstår. Udskriv evt. SQL-sætningen.
Avatar billede dm013 Nybegynder
22. januar 2002 - 19:34 #19
Jeg har virkelig brug for hjælp
Avatar billede cool_casper Nybegynder
22. januar 2002 - 19:58 #20
1. Du skriver:
<%
if isEmpty(Session("UserID")) Then
Response.Redirect("login.asp")
End If
Session("UserName")
%>
Hvad bruger du den session til?!?! Du kan da ikke bare skrive
Session("UserName") !!!
Du skal enten give den en værdi eller slette linien!

2. Og så er der ikke ( og  ) i en Redirect !!

3.
<%
strsql = "UPDATE Users SET Dato ='" & request.form("Nydato") &"'"
strsql = strsql & ", Fornavn= '" & request.form("Fornavn") &"'"
strsql = strsql & ", Efternavn= '" & request.form("Efternavn") &"'"
strsql = strsql & ", Adresse= '" & request.form("Adresse") &"'"
strsql = strsql & ", Telefon= '" & request.form("Telefon") &"'"
strsql = strsql & ", Mobil= '" & request.form("Mobil") &"'"
strsql = strsql & ", Mobil1= '" & request.form("Mobil1") &"'"
strsql = strsql & ", Email= '" & request.form("Email") &"'"
strsql = strsql & ", Email1= '" & request.form("Email1") &"'"
strsql = strsql & ", Foedselsdato= '" & request.form("Foedselsdato") &"'"
strsql = strsql & ", Postnr= '" & request.form("Postnr") &"'"
strsql = strsql & ", By= '" & request.form("By") &"' "
strsql = strsql & " WHERE UserID = " & Session("UserID")   
Response.Write strsql
'Set rs = Conn.Execute (strsql)
Conn.Close
%>
Og se hvad den udskriver....???
Og Fødselsdag er et Tekst-felt ?!?!?
Avatar billede Slettet bruger
22. januar 2002 - 20:33 #21
cool_casper: Hvis det skal være helt efter reglerne, skal der faktisk være ( og ) i en redirect :)

Er du sikker på at felter som telefon og mobil består af tekst?
Avatar billede cool_casper Nybegynder
22. januar 2002 - 20:43 #22
Prøv at putte dem ind i variabler først:

strNydato = request.form("Nydato")
strFornavn = request.form("Fornavn")
strEfternavn = request.form("Efternavn")
strAdresse = request.form("Adresse")
strTelefon = request.form("Telefon")
strMobil = request.form("Mobil")
strMobil1 = request.form("Mobil1")
strEmail = request.form("Email")
strEmail1 = request.form("Email1")
strFoedselsdato = request.form("Foedselsdato")
strPostnr = request.form("Postnr")
strBy = request.form("By")

sql = sql & ", Dato= " & strNydato
sql = sql & ", Fornavn= '" & strFornavn &"'"
sql = sql & ", Efternavn= '" & strEfternavn &"'"
sql = sql & ", Adresse= '" & strAdresse &"'"
sql = sql & ", Telefon= " & strTelefon &""
sql = sql & ", Mobil= " & strMobil &""
sql = sql & ", Mobil1= " & strMobil1 &""
sql = sql & ", Email= '" & strEmail &"'"
sql = sql & ", Email1= '" & strEmail1 &"'"
sql = sql & ", Foedselsdato= " & strFoedselsdato
sql = sql & ", Postnr= " & str& strPostnr &"'"
sql = sql & ", By= " & str& strBy &"'"

Så burde det virke...
Avatar billede dm013 Nybegynder
22. januar 2002 - 20:43 #23
3 er ændret til:
<% response.buffer = true %>
<%
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("madkulten.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open strDSN
%>
<%
sql = sql & ", Dato= '" & request.form("Nydato") &"'"
sql = sql & ", Fornavn= '" & request.form("Fornavn") &"'"
sql = sql & ", Efternavn= '" & request.form("Efternavn") &"'"
sql = sql & ", Adresse= '" & request.form("Adresse") &"'"
sql = sql & ", Telefon= '" & request.form("Telefon") &"'"
sql = sql & ", Mobil= '" & request.form("Mobil") &"'"
sql = sql & ", Mobil1= '" & request.form("Mobil1") &"'"
sql = sql & ", Email= '" & request.form("Email") &"'"
sql = sql & ", Email1= '" & request.form("Email1") &"'"
sql = sql & ", Foedselsdato= '" & request.form("Foedselsdato") &"'"
sql = sql & ", Postnr= '" & request.form("Postnr") &"'"
sql = sql & ", By= '" & request.form("By") &"'"
Set rs = Conn.Execute (sql)
Conn.Close
%>
<% response.redirect ("medlemsliste.asp")%>
Avatar billede dm013 Nybegynder
22. januar 2002 - 20:47 #24
der er stadig problemer efter at have prøvet dit forslag cool_casper
Avatar billede cool_casper Nybegynder
22. januar 2002 - 20:55 #25
Du har da ikke opdateret den på webserveren!! Kan du ikke lige gøre det så vi kan se hvad problemmet er!
Avatar billede coltau Juniormester
22. januar 2002 - 21:55 #26
Som jeg nævnte i går. der er kun et at gøre på en server der ikke fortæller fejlkoder. DEBUG. !
Om det så betyder at man fjerne alle linier pånær den første. Går det godt så aktivere man linie nr. 2 og prøver igen. og igen og igen. Indtil fejlen kommer.

jeg vil vædde med at fejlen findes i sidste linie.
<% response.redirect ("medlemsliste.asp")%>
Filen findes i en anden mappe. :-|
Avatar billede cool_casper Nybegynder
22. januar 2002 - 21:59 #27
Nej, vi har snakket over ICQ of jeg få denne fejlmmedelse, selvom hvis jeg skriver en Now() værdi direkte i databasen:

Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl, fordi der mangler en operator. i forespørgselsudtrykket "22-01-2002 21:56:21".
ret_medlem.asp, line 44

Og linie 44 er der hvor SQL'en bliver executed!
Avatar billede cool_casper Nybegynder
22. januar 2002 - 22:02 #28
Og Access db'en er sat op til Standarddatoformat ! Så der er ok! Og hvis jeg skriver : 22-01-2002 21:56:21 direkte i db'en tager den imod det!!
Avatar billede cool_casper Nybegynder
22. januar 2002 - 22:07 #29
SQL'n ser sådan ud!!:

UPDATE Users SET Dato= 22-01-2002 22:00:25, Fornavn= 'Niels', Efternavn= 'Riber', Adresse= '', Telefon= 65710280, Mobil= 51297137, Mobil1= , Email= 'ingen', Email1= 'dm01318@edb.tietgen.dk', Foedselsdato= 15-01-1971, Postnr= 5200, By= 'Odense N' WHERE UserID = 6

Og det er stdgi Dato der fucker....!
Avatar billede coltau Juniormester
22. januar 2002 - 23:06 #30
Hav' så med at få # omkring datoen- (MS Access) Det er MS-SQL der kan klare enkeltstående plinger. Sådan:

UPDATE Users SET Dato= #22-01-2002 22:00:25#
Avatar billede coltau Juniormester
27. februar 2002 - 09:16 #31
Og der er # omkring begge datoer. ?
Avatar billede flytier Nybegynder
27. februar 2002 - 09:26 #32
Prøv dette på din dato - Foedselsdato= DATEVALUE('15-01-1971'),
hvis du skal have tid tidspunkt med - Foedselsdato = (DATEVALUE('15-01-1971')+TIMEVALUE('21:56:21'))
Michael
Avatar billede dm013 Nybegynder
02. marts 2002 - 14:56 #33
Det var åbenbart en fejl i databasen for med en ny database virker det fint
Avatar billede dm013 Nybegynder
15. april 2002 - 05:03 #34
lukket
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