Avatar billede virtualdurran Nybegynder
05. maj 2004 - 10:34 Der er 14 kommentarer og
1 løsning

http://www.eksperten.dk/spm/496027 fortsat

Med koden fra http://www.eksperten.dk/spm/496027, kan jeg så får den til at slette overskrifterne, når de er fx 2 mdr gamle? Den skal ikke slette nyhederne i databasen, kun de links den danner.

På forhånd tak
Avatar billede and_ Nybegynder
05. maj 2004 - 10:35 #1
det kan du godt :)

øjeblik
Avatar billede and_ Nybegynder
05. maj 2004 - 10:36 #2
sql2 = "delete from whos_on where tid < #" & dateadd("n", -20, now()) & "#"

den har tager 20 min, men vi trimmer den lige ;)
Avatar billede and_ Nybegynder
05. maj 2004 - 10:38 #3
sql2 = "delete from nyheder where dato < #" & dateadd("m", -2, now()) & "#"

skulle vist kunne klare det ;)
Avatar billede virtualdurran Nybegynder
05. maj 2004 - 10:43 #4
Hvor skal denne tekst indsættes?
Avatar billede and_ Nybegynder
05. maj 2004 - 10:46 #5
det er jo dit sql-kald... lad mig se:

<%@ LCID=1030%>
<html>
<head>
<title>Nyhedsoverskrifter</title>
</head>
<body>
<%

dim dbname        'navnet på databasen med fuldstændig sti
dim cn            'databaseforbindelse
dim constr        'connectionstring til databaseforbindelse
dim sqlstring        'streng til sql udtryk
dim resultat        'record med resultater fra databaseforespørgsler

dbname=Server.MapPath("Admin.mdb")

set cn = server.createobject("ADODB.Connection")

constr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & dbname
cn.connectionstring = constr

cn.open

'Slet gamle nyheder
sqlslet = "delete from nyheder where dato < #" & dateadd("m", -2, now()) & "#"
cn.execute(sqlslet)

'Hent nyheder
sqlstring="select * from Nyheder"
set resultat=cn.execute(sqlstring)

if resultat.eof then
  response.write"Ingen nyheder<br>"
else

  While not resultat.eof   
%>
<tr><td><a href="Nyheder.asp#<%=resultat("id")%>" target="Indhold"><%= formatdatetime(resultat("dato"), vbshortdate)%><%=resultat("overskrift")%></a><br></td>
    <%
    resultat.movenext
      wend
      response.write "<table>"
end if
cn.close
set cn=nothing
%>
</body>
</html>
Avatar billede and_ Nybegynder
05. maj 2004 - 10:46 #6
prøv den ;)
Avatar billede virtualdurran Nybegynder
05. maj 2004 - 10:51 #7
Error Type:
Microsoft JET Database Engine (0x80040E37)
The Microsoft Jet database engine cannot find the input table or query 'whos_on'. Make sure it exists and that its name is spelled correctly.
/elevpn/jacob/eksamensprojekt2/HP/asp/viewall.asp, line 27
Avatar billede virtualdurran Nybegynder
05. maj 2004 - 10:51 #8
Jeg har prøvet med tiden du sagde først, for jeg kan jo ik rigtig vente 2 mdr for at se om det virker.
Avatar billede and_ Nybegynder
05. maj 2004 - 10:53 #9
men så skal du jo også lige rette den til.... jeg finder jo bare hurtigt noget kode og lægger ind... Kode der selvfølgelig virker for mig ;)

men here it goes:

Min sql: sql2 = "delete from whos_on where tid < #" & dateadd("n", -20, now()) & "#"

Skal skiftes med:

Din Sql: sqlslet = "delete from nyheder where dato < #" & dateadd("n, -2, now()) & "#"

jeg har sat den til 2 minutter :=)
Avatar billede virtualdurran Nybegynder
05. maj 2004 - 10:53 #10
'Slet gamle nyheder
sqlslet = "delete from nyheder where tid < #" & dateadd("n", -2, now()) & "#"
cn.execute(sqlslet)

den giver nu følgende fejl:
Error Type:
Microsoft JET Database Engine (0x80040E10)
No value given for one or more required parameters.
/elevpn/jacob/eksamensprojekt2/HP/asp/viewall.asp, line 27
Avatar billede and_ Nybegynder
05. maj 2004 - 10:56 #11
Kig nøje på disse 2 linier:

sqlslet = "delete from nyheder where dato < #" & dateadd("n, -2, now()) & "#"
sqlslet = "delete from nyheder where tid < #" & dateadd("n", -2, now()) & "#"

Kan du se nogen forskel?

Du skal kalde kolonnen for dato og ikke tid ;)
Avatar billede virtualdurran Nybegynder
05. maj 2004 - 11:02 #12
Nu skal jeg jo forklare det her til eksamen, så hvordan definere jeg om det er 1 sekund/minut/måned/år den skal vente?
Avatar billede and_ Nybegynder
05. maj 2004 - 11:07 #13
ehehehehehhee taget inde fra msdn:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbenlr98/html/vafctDateAdd.asp

Sig til hvis der er noget der skal forklares mere ;)

Returns a Variant (Date) containing a date to which a specified time interval has been added.

DateAdd(interval, number, date)

Setting Description
yyyy Year
q Quarter
m Month
y Day of year
d Day
w Weekday
ww Week
h Hour
n Minute
s Second
Avatar billede virtualdurran Nybegynder
05. maj 2004 - 11:10 #14
1000 tæsk for hjælpen....igen! :D
Avatar billede and_ Nybegynder
05. maj 2004 - 11:11 #15
Det er iorden ;)

Vi er her jo for at hjælpe hinanden ;)
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