Avatar billede websam Nybegynder
13. december 2001 - 19:27 Der er 17 kommentarer og
1 løsning

Ingen fejlmelding men..........???

Hejsa jeg er i færd med at lave et komplet statistik
program og skal have lavet en del af det således at
hvis en besøgende der er sendt fra en anden side hvor
på mit link ligger så skal der tilføjes 1 hit i db´en
Koden melder ingen fejl men den opdatere ikke db´en
Nogen gode foreslag til dette ?

<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DBPath = \"DBQ=\" & server.mappath(\"referal.mdb\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; \" & DBPath

Sql = \"Select * From Referal\"
Set Rs = Conn.Execute(Sql)

Refere = Rs(\"Referent\")

If Referent = Request.ServerVariables(\"HTTP_REFERER\") Then
  SqlHit = \"Update Referal set Hit = Hit+1 Where Id = \" & Refere
  Conn.Execute(SqlHit)
End If
%>

På forhånd tak, Martin
Avatar billede nute Nybegynder
13. december 2001 - 19:35 #1
hmmm....det er et par merkelige ting i din kode...

1) din SQL...hvorfor ?? du vil jo kun ha mulighet for å lese den første oppføring av \'referent\' i din database. Jeg tror helle du mener å skrive:

Sql = \"Select * From Referal WHERE Referent = \'\" & Request.ServerVariables(\"HTTP_REFERER\") & \"\'\"

2) Din if vil aldri vær true med mindre IP = den aller første IP i din database.

2) Din andre SQL...\'Set Hit = Hit + 1\' vil gi en feilmelding. Du får ikke denne feilmelding fordi du aldri kommer inn i denne if

jeg regner med at du ønsker å gjøre dette:

Set Conn = Server.CreateObject(\"ADODB.Connection\")
DBPath = \"DBQ=\" & server.mappath(\"referal.mdb\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; \" & DBPath

Sql = \"Select * From Referal WHERE Referent = \'\" & Request.ServerVariables(\"HTTP_REFERER\") & \"\'\"
Set Rs = Conn.Execute(Sql)

if( Rs.BOF ) then
  SqlHit = \"Update Referal set Hit = ( SELECT Hit FROM Referal WHERE Referent = \'\" & Request.ServerVariables(\"HTTP_REFERER\") & \"\' ) + 1 Where Id = \" & Request.ServerVariables(\"HTTP_REFERER\")
  Conn.Execute(SqlHit)
End If
%>
Avatar billede websam Nybegynder
13. december 2001 - 20:22 #2
Det ser mere rigtigt ud men den opdatere stadig ikke i db´en jeg forstår det ikke helt ?

Mvh. Martin
Avatar billede nute Nybegynder
13. december 2001 - 20:29 #3
er du sikker på at den går inn i din if ?
Avatar billede websam Nybegynder
13. december 2001 - 20:34 #4
Jeg er ikke så god til det med If, then og Else
men skulle der ikke istedet for

if( Rs.BOF ) then

Stå som her

if not (Rs.BOF OR Rs.EOF ) then

Ellers må du prøve at forklare hvad  du mener ?

Mvh. Martin
Avatar billede nute Nybegynder
13. december 2001 - 20:37 #5
websam >> hvis det ikke er noen resultat i forespørselen, så vil cursoren være \'BOF\'. Det er ikke nødvendig med andre test for å finne ut hvor cursoren står...
Avatar billede websam Nybegynder
13. december 2001 - 20:47 #6
Godt, så ved jeg ikke hvad du mener med om den kommer ind i min If ?

Det eneste kode der er på siden er det du lige
skrev kan du forklare hvad du mener ?

Mvh. Martin
Avatar billede nute Nybegynder
13. december 2001 - 20:52 #7
betingelsene du setter i en if...then returnerer *alltid* enten true eller false. hvis betingelsene returnerer true, så \'går den inn\' i if\'en:

if( 1=1 ) then
  \' betingelsene her (1=1) returnerer true, derfor \'går den inn\' i min if
end if

if( 1=2 ) then
\' betingelsene her (1=2) returnerer false, derfor \'går den *ikke* inn\' i min if
end if

Avatar billede websam Nybegynder
13. december 2001 - 21:04 #8
Så blev jeg det klogere !

Det vil altså sige at hvis der i min kolonne
Referent under id 1 står http://www.firmanavn.dk/
og det er denne side der kommer besøgende fra så
skulle den oxo gå ind i min If og opdatere db´en
efter den stump kode du sendte mig.
Men det sker bare ikke. Jeg må rode lidt mere
med det.

Mvh. Martin
Avatar billede nute Nybegynder
13. december 2001 - 21:17 #9
så er det npe galt med din UPDATE SQL...prøv denne:

SqlHit = \"Update Referal set Hit = ( SELECT Hit FROM Referal WHERE Referent = \'\" & Request.ServerVariables(\"HTTP_REFERER\") & \"\' ) + 1 Where Referent = \'\" & Request.ServerVariables(\"HTTP_REFERER\") & \"\'\"

/nute
 

Avatar billede websam Nybegynder
13. december 2001 - 21:54 #10
Stadig samme resultat jeg gir op lige nu er ved at få grå hår i hovedet :-(

Men alligevel tak for hjælpen !
Avatar billede nute Nybegynder
13. december 2001 - 21:57 #11
hvis den ikke oppdaterer så er du iallefall nødt til å få en feilmelding...har du en link jeg kan kikke på ?
Avatar billede websam Nybegynder
13. december 2001 - 22:02 #12
Nej det har jeg ikke da det køre internt
men jeg kan sende dig de sider jeg roder med
hvis du vil se dem og evt hjælpe mig ?
Avatar billede nute Nybegynder
13. december 2001 - 22:04 #13
ok...send de nødvendige filer...
Avatar billede websam Nybegynder
13. december 2001 - 22:08 #14
Øhhh... hvor finder jeg lige din email add ???
Avatar billede nute Nybegynder
13. december 2001 - 22:10 #15
ved å klikke på mitt brukernavn...
Avatar billede nute Nybegynder
13. december 2001 - 22:54 #16
denne fungerer for meg:

<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DBPath = \"DBQ=\" & server.mappath(\"referal.mdb\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; \" & DBPath

Sql = \"Select * From Referal WHERE Referent = \'\" & Request.ServerVariables(\"HTTP_REFERER\") & \"\'\"
Set Rs = Conn.Execute(Sql)

if( NOT Rs.BOF AND NOT Rs.EOF ) then
  SQLCount = \"SELECT hit FROM Referal WHERE Referent = \'\" & Request.ServerVariables(\"HTTP_REFERER\") & \"\'\"
    countRS = Conn.Execute( SQLCount )
    hit = countRS(\"hit\")
  SqlHit = \"Update Referal set hit = \" & (CInt(hit)+ 1) & \" Where Referent = \'\" & Request.ServerVariables(\"HTTP_REFERER\") & \"\'\"
    Conn.Execute(SqlHit)
End If
%>
<html>

<head>
</head>

<body>
<p><a href=\"Links.asp\">Links</a></p>

</body>

</html>


/nute
Avatar billede websam Nybegynder
13. december 2001 - 23:02 #17
Websam bøjer sig i støvet for \"nute\"
helt vildt sejt !!!

1000 Tak for hjælpen :-))
Avatar billede nute Nybegynder
13. december 2001 - 23:03 #18
selv takk...
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