19. januar 2003 - 00:39
Der er
46 kommentarer og 2 løsninger
Maillingliste problem
Jeg er ved at lave en funktion hvor man kan se samtlige tilmeldte af ens maillingliste og bruger følgende kode - men hvad er der galt? <% ' Databaseforbindelse - husk at angive sti til din database Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("maillingliste.mdb") Conn.Open DSN ' SQL forespørgsel strSQL = "Select * from maillingliste" ' Udfør forespørgsel (rs indeholder nu resultatet) Set rs = Conn.Execute(strSQL) ' Gennemløb Recordset (rs) med en løkke Do ' Udskriv værdien af kolonnen Fornavn Response.Write rs("navn") & ("email" & "<br>" ' Gå til næste Record i rs rs.MoveNext ' Fortsæt indtil rs er gennemløbet (EOF = End Of File) Loop While Not rs.EOF ' Luk databaseforbindelse Conn.Close Set Conn = Nothing %>
Annonceindlæg fra Barco
19. januar 2003 - 00:42
#1
Response.Write rs("navn") & rs("email") & "<br>"
19. januar 2003 - 00:42
#2
Hvad sker der/ikke?
19. januar 2003 - 00:43
#3
19. januar 2003 - 00:51
#4
på line 61
19. januar 2003 - 00:53
#5
Hvad er linie 61?
19. januar 2003 - 00:54
#6
det er: Response.Write rs("navn") & rs("email") & "<br>"
19. januar 2003 - 00:54
#7
(Nå ja, jeg får ikke den fejl. Jeg får denne i stedet for: HTTP/1.1 302 Object moved Server: Microsoft-IIS/5.0 Date: Sat, 18 Jan 2003 23:51:56 GMT Location: fejl.asp Content-Length: 129 Content-Type: text/html Set-Cookie: ASPSESSIONIDAARSSQSC=BNPEHOGDMBMBLFEPFIELDFBH; path=/ Cache-control: private <head><title>Object moved</title></head> <body><h1>Object Moved</h1>This object may be found <a HREF="fejl.asp">here</a>.</body>
19. januar 2003 - 00:55
#8
Hvad siger den om fejlen?
19. januar 2003 - 00:55
#9
error '80020009' Exception occurred. /warner/Programmering/CMS/maillingliste/tilmeldte.asp, line 61
19. januar 2003 - 00:55
#10
Prøv: <% ' Databaseforbindelse - husk at angive sti til din database Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("maillingliste.mdb") Conn.Open DSN ' SQL forespørgsel strSQL = "Select * from maillingliste" ' Udfør forespørgsel (rs indeholder nu resultatet) Set rs = Conn.Execute(strSQL) ' Gennemløb Recordset (rs) med en løkke Do Until rs.EOF ' Udskriv værdien af kolonnen Fornavn Response.Write rs("navn") & ("email" & "<br>" ' Gå til næste Record i rs rs.MoveNext ' Fortsæt indtil rs er gennemløbet (EOF = End Of File) Loop ' Luk databaseforbindelse Conn.Close Set Conn = Nothing %>
19. januar 2003 - 00:57
#11
niceday --> nope virkede ikke :(
19. januar 2003 - 00:57
#12
Du bør gøre som niceday foreslår (da din ikke vil virke, når der ikke er nogen i listen). Men linien skal nu være som jeg skrev den
19. januar 2003 - 00:57
#13
Altså med i stedet for den ovenstående linie: Response.Write rs("navn") & rs("email") & "<br>" Desuden tyder fejlen på at du referer til en kolonne der ikke findes.
19. januar 2003 - 00:59
#15
Response.Write rs("Navn") & rs("Email") & "<br>"
19. januar 2003 - 01:06
#17
Prøv nedenstående kode - og indsæt lige stien til din database. Nogle gange løses et problem ved at lave tingene om: <% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "Data Source=...fysisk sti til databasen...\database.mdb;Provider=Microsoft.Jet.OLEDB.4.0;" sql = "Select * from maillingliste" set RS = Server.CreateObject("ADODB.Recordset") RS.Open sql,conn, 3, 3, 1 %> <html> <head> <title>Tilmedte</title> </head> <body> <table width="500" border="0" cellspacing="0" cellpadding="0"> <% Do until RS.EOF %> <tr> <td width="250"><%=RS("Navn")%></td> <td width="250"><%=RS("Email")%></td> </tr> <% RS.movenext Loop %> </table> </body> </html>
19. januar 2003 - 01:06
#18
Har du lagt databasen op ? Kan du se om den skriver "<br>"-en ud?
19. januar 2003 - 01:13
#20
Jeg har lige testet koden på en Access 2000, hvor det virkede, så er du SIKKER på at du har de rigtige kolonnenavne (du har f.eks. stavet maillingliste med 2 l'er) og at der ligger en database i det bibliotek du hentyder til. Med den kode du startede med kræves der at databasen ligger i samme bibliotek som din kode.
19. januar 2003 - 01:14
#21
Hvor ligger dit script - hvilken folder?
19. januar 2003 - 01:14
#22
Jeg gætter bare på at din database er tom - kan ikke selv checke det (har ikke adgang til Access)
19. januar 2003 - 01:15
#23
19. januar 2003 - 01:16
#24
Databasen er tom - har lige tjekket det
19. januar 2003 - 01:17
#25
Og så tyder det på den er skrivebeskyttet, hvorfor du IKKE kan ændre i den online.
19. januar 2003 - 01:17
#26
Jeg kan ikke se poster i den linkede db og tabel maillingliste (du er da konsekvent med den stavefjel ;-)
19. januar 2003 - 01:21
#27
niceday--> hvordan kan jeg gøre så den ikke er skrivebeskyttet?
19. januar 2003 - 01:22
#28
Højreklik på > vælg egenskaber og fjern krydset ved 'Skrivebeskyttet'
19. januar 2003 - 01:25
#29
den er ikke skrivebeskyttet
19. januar 2003 - 01:27
#30
Nå, men nu er der da data i...
19. januar 2003 - 01:30
#31
og tabellen er stavet rigtigt
19. januar 2003 - 01:34
#33
Jeg kan ikke se tilmeldte - filen findes ikke.
Men ovenstående kode jeg skrev virker fint:
http://www.megastar.dk/tester Indhold i filen:
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Data Source=c:\...fysisk sti...\maillingliste.mdb;Provider=Microsoft.Jet.OLEDB.4.0;"
sql = "Select * from mailingliste"
set RS = Server.CreateObject("ADODB.Recordset")
RS.Open sql,conn, 3, 3, 1
%>
<html>
<head>
<title>Tilmedte</title>
</head>
<body>
<table width="500" border="0" cellspacing="0" cellpadding="0">
<%
Do until RS.EOF
%>
<tr>
<td width="250"><%=RS("Navn")%></td>
<td width="250"><%=RS("Email")%></td>
</tr>
<%
RS.movenext
Loop
%>
</table>
</body>
</html>
19. januar 2003 - 01:39
#34
>>> caroc: har du renamet hele vejen, eller kun delvist? Der er jo både kode, mdb, sti etc...
19. januar 2003 - 01:41
#35
kan ikke helt forstå den der data Source.. hvordan skal den skrives hvis de ligger i samme mappe?
19. januar 2003 - 01:41
#36
nilfri--> hele vejen .)
19. januar 2003 - 01:44
#38
Hvis script og db ligger samme sted, er det fint nok nu Server.MapPath("maillingliste.mdb") eller velsagtens Server.MapPath("mailingliste.mdb") -------------------^ ;-)
19. januar 2003 - 01:49
#39
det er simpelthen for mærkeligt ... det virker stadig ikke - der opstod en intern HTTP 500-serverfejl
19. januar 2003 - 01:50
#40
Har du prøvet at downloade min zip-fil og brugt de 2 filer der er i den?
19. januar 2003 - 01:51
#41
<% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "Data Source=("mailingliste.mdb)" ;Provider=Microsoft.Jet.OLEDB.4.0;" sql = "Select * from mailingliste" set RS = Server.CreateObject("ADODB.Recordset") RS.Open sql,conn, 3, 3, 1 Do until RS.EOF Response.Write rs("Navn") & " --- " & rs("Email") & "<br>" RS.movenext Loop %>
19. januar 2003 - 01:56
#42
datasource er forkert
19. januar 2003 - 01:58
#43
hvordan så?
19. januar 2003 - 02:07
#44
<% set conn=Server.CreateObject("ADODB.Connection") conn.Provider="Microsoft.Jet.OLEDB.4.0" conn.open(Server.Mappath("mailingliste.mdb")) sql = "Select * from mailingliste" set RS = Server.CreateObject("ADODB.Recordset") RS.Open sql,conn, 3, 3, 1 Do until RS.EOF Response.Write rs("Navn") & " --- " & rs("Email") & "<br>" RS.movenext Loop %> Database og asp-filen skal ligge i samme mappe - bemærk filnavnet på databasen skal staves rigtigt.
19. januar 2003 - 02:09
#45
det virkede----- JUBII det tog også kun 45 indlæg .) mange tak skal i have begge 2 - sætter lige lidt extra point på
19. januar 2003 - 02:10
#46
Endelig :-) Sjældent har jeg undret mig så længe over at det ikke ville virke.
19. januar 2003 - 02:15
#47
sov godt..
19. januar 2003 - 02:25
#48
ilm
Kurser inden for grundlæggende programmering