Avatar billede esbelme Nybegynder
06. december 2005 - 19:59 Der er 11 kommentarer og
1 løsning

Script til visning af indhold samt delete-funktion

Jeg har et glimrende og simpelt APS-forum, men mangler en online delete-funktion. Altså via ASP eller lignende.

Den skal blot vise alle indlæg, med en lille slette knap eller noget. En simpel admin-side. Bare så jeg slipper for at åbne databasen gennem Access, for blot at slette et enkelt indlæg.
Databasen er i access.

Hjælp!
Avatar billede nielle Nybegynder
06. december 2005 - 21:18 #1
Måske noget i stil med disse to scripts?

=== visAlleForumIndaeg.asp ===

sql = "SELECT id FROM forumTabel ORDER BY id DESC"
Set sql = Conn.Execute(sql)

Do While Not rs.EOF
    Response.Write "<a href='sletForumIndlaeg.asp?id=" & rs("id") & "'>Slet indlæg nr. " & rs("id") & "</a><br>"
    rs.MoveNext
Loop


=== sletForumIndlaeg.asp ===

id = Request.QueryString("id")
sql = "DELETE FROM forumTabel WHERE id = " & id
Conn.Execute(sql)

Response.Redirect("visAlleForumIndaeg.asp")
Avatar billede esbelme Nybegynder
07. december 2005 - 21:58 #2
Ja, det ligner det rigtige! sletforum filen giver mig dog følgende fejlmeddelse:

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'id ='.

sletForumIndlaeg.asp, line 13

Hvor er fejlen?
Avatar billede nielle Nybegynder
07. december 2005 - 22:07 #3
Prøv lige at lave en Vis Kilde på visAlleForumIndaeg.asp. Kommer der overhovedet en værdi med i enden af:

sletForumIndlaeg.asp?id= <??? kommer der noget her ???>

- linkene?
Avatar billede esbelme Nybegynder
08. december 2005 - 08:06 #4
Ja! Der kommer noget frem: <a href='sletForumIndlaeg.asp?id=8'>Slet indlæg nr. 8</a>

Men når man så trykker på linket, så kommer ovenstående fejlmeddelse...
Avatar billede nielle Nybegynder
08. december 2005 - 17:22 #5
Underligt - så burde det da virke...

Prøv med lidt debug-udskrift:

=== sletForumIndlaeg.asp ===

id = Request.QueryString("id")
sql = "DELETE FROM forumTabel WHERE id = " & id
Response.Write "DEBUG: " & sql & "<br>"
Conn.Execute(sql)
Avatar billede esbelme Nybegynder
08. december 2005 - 21:33 #6
Nu virker det sgu! Tror det var en forkert reference til en tabel... Så dit script virkede! Nu skal jeg kun gætte mig til hvilket indlæg der har hvilket id...

Tak for hjælpen!
Avatar billede nielle Nybegynder
08. december 2005 - 21:45 #7
Du kan modifisere din kode lidt sådan at du kan se selve teksten; Noget i denne stil:

sql = "SELECT indlaeg, id FROM forumTabel ORDER BY id DESC"
Set sql = Conn.Execute(sql)

Do While Not rs.EOF
    Response.Write rs("indlaeg") & "<br>"
    Response.Write "<a href='sletForumIndlaeg.asp?id=" & rs("id") & "'>Slet</a><br>"
    rs.MoveNext
Loop
Avatar billede esbelme Nybegynder
11. december 2005 - 09:40 #8
Tak, det fandt jeg selv ud af, omend det blev knapt så kønt... ;)
Avatar billede nielle Nybegynder
11. december 2005 - 09:50 #9
Nu kender jeg jo ikke dine data, så jeg kan ikke rigtigt vurdere hvad der ville være kønnere.

Men du kan jo f.eks. prøve at ændre:

Response.Write rs("indlaeg") & "<br>"

- til:

Response.Write Left(rs("indlaeg"), 20) & " ..."
Avatar billede nielle Nybegynder
20. december 2005 - 19:06 #10
Så mangler du bare at acceptere svaret :^)
Avatar billede esbelme Nybegynder
21. december 2005 - 13:18 #11
Havde forsøgt flere gange, men det var sgu ikke for smart en godkendelse process, når man ikke kender den... Men nu skulle den gerne være der! Mvh E.
Avatar billede nielle Nybegynder
21. december 2005 - 19:04 #12
Takker for point - jeg tror at den er lavet, som den er, for at man kan acceptere (eller afvise) svarene fra flere som hver har lagt et svar.
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