---
title: "Admin-gränsnitt och databaskoppling...."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/11733-admin-gränsnitt-och-databaskoppling"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Harback"
published: "2001-09-19T20:27:00.000Z"
updated: "2001-09-23T12:25:00.000Z"
replies: 6
views: 200
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/11733-admin-gränsnitt-och-databaskoppling"
---

# Admin-gränsnitt och databaskoppling....

## #1 — Harback, 2001-09-19T20:27Z

Hejsan.

Har ett inloggningssystem där man kan logga in med olika accesser. Admin ska självklart ha tillgång till alla funktioner men jag vet inte riktigt hur man ska skriva ett snabbt och bra admingränsnitt. Är det någon som har något exempel på hur detta kan se ut eller hur man ska bygga upp ett sådant? Funktioner, subbar?

Sedan har jag en annan fråga angående databaskoppling. Följande kod använder jag väldigt ofta:

```
	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("databas.mdb")
```

Tänkte att det är smidigare att lägga det i en application i global.asa och sedan anropa den varje gång istället. Är detta en bra lösning? Något annat tips? 

Tacksam för svar!

Permalänk: https://www.webforum.nu/p/11733

## #2 — ekke_t, 2001-09-19T21:24Z

Tjena!

Angående din andra fråga så brukar jag skriva in connection-strängen i en funktion i en fil som jag inkluderar med ssi på varje sida...

Kan se ut t.ex så här

db.asp :

```
function getDB()
getDB = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("databas.mdb")
end function
```

en annan sida:

```
<%@Language=VBScript%>
<!--#include file="db.asp"-->
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open getDB

.
.
.

%>
```

Funkar alldeles utmärkt bra :)

Permalänk: https://www.webforum.nu/p/287143

## #3 — PatrikB, 2001-09-20T06:19Z

och jag som e lite slö och inte orkar skriva så mycket varje gång har denna funktion som inkluderas på varje sida:

```
Function GetConn
Dim objConn
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Min-DSN"
Set GetConn = objConn
End Function
```

Sedan skapar och öppnar man ett connection så här:

```
<%
Set objDB = GetConn
'## -- gör vad som ska göras med connection objectet --
objDB.Close
Set objDB = Nothing
%>
<!--#INCLUDE VIRTUAL="/inc-mapp/inc_functions.asp"-->
```

cya,
PatrikB

Permalänk: https://www.webforum.nu/p/287144

## #4 — Harback, 2001-09-20T15:16Z

Okej, tack så mycket!

Ingen som kan visa lite hur ni ställt upp ert admingränssnitt med funktioner, subbar etc? Ni behöver alltså inte skriva ihop en 200-raders kod utan ge bara lite förslag. 
Vore väldigt tacksam för svar.

Permalänk: https://www.webforum.nu/p/287145

## #5 — Pace, 2001-09-21T21:01Z

Jag visste heller inte hur jag skulle skriva mitt admin-gränssnitt, så jag fick skriva om det när det var halvfärdigt (dålig planering!).

Men så här har jag byggt upp det nu:

Jag loggar in på default.asp, där jag sedan skickas vidare till admin.asp som är "huvudsidan" för allt. Därigenom administreras alla funktioner (nyhetssystem, poll, gästbok etc.), genom att inkludera SSI filer med subbar och funktioner:

```
inc_nyheter.asp
inc_gastbok.asp
inc_poll.asp
osv...
```

När jag sedan går in på admin.asp så skapar jag länkar som ser ut så här:

```
admin.asp?app=nyheter&action=write
admin.asp?app=poll&action=list
admin.asp?app=gastbok&action=edit&id=34
```

Alltså app \= vad det är för applikation (nyheter, poll osv).
Action \= vad man ska göra med applikationen.
Detta är grunden, därefter har man ju ID och dylikt som läggs på efterhand.

För att "ta hand" om dessa querystrings och utföra det jag valt att göra så gör jag ett antal Select Case, exempel:

```
Application = Request.Querystring("app")
Action = Request.Querystring("action")

Select Case Application[/red]
Case "nyheter"
' En Select Case för "action" som utför vad man vill göra med nyheterna.
Case "gastbok"
' Vad man vill göra med gästboken.
Case "poll"
' Vad man vill göra med pollen.
Case Else
' Huvudsidan
End Select[/red]
```

I Select Case:n för Action så anropas subbar som ligger i inkluderings-filerna, exempelvis så kallas subben "writeNews" när jag vill skriva en nyhet (admin.asp?app=nyheter&action=write).

Det blev mycket, men jag hoppas att du förstår mitt sätt att bygga upp det i alla fall!
(Det blir cirka 1500 rader kod att inkludera med SSI, totalt tre-fyra filer, men jag märker ingen prestandaförlust)

Permalänk: https://www.webforum.nu/p/287146

## #6 — Harback, 2001-09-23T11:38Z

Tack så mycket Pace...det verkar vara ett bra system! Ska ta och testa att bygga upp det sådär. 

Förresten en fråga till. Om jag har fattat rätt så lämnar inte en sub någon information tillbaka men det gör en funktion, eller? Vilket är bäst att använda om man t.ex. bara vill uppdatera eller lägga till en post i en databas? Tacksam för exempel.

Permalänk: https://www.webforum.nu/p/287147

## #7 — Pace, 2001-09-23T12:25Z

> Om jag har fattat rätt så lämnar inte en sub någon information tillbaka men det gör en funktion, eller?

 

Exakt!

> Vilket är bäst att använda om man t.ex. bara vill uppdatera eller lägga till en post i en databas? Tacksam för exempel.

Du har besvarat det själv ovan... ;)
Om du bara vill uppdatera databasen så räcker det med en Sub. Exempel:

```
Sub uppdateraDatabase()

SQL = "UPDATE person SET iq = iq - 1 WHERE aphjärna = @nders"
Connection.execute(SQL),,128

End Sub
```

 §e 

Och om du vill ha någonting tillbaka så ska du använda "Function" istället:

```
Function räknaOmIQ(iq)

iq = iq - 1
räknaOmIQ = iq

End Function
```

Permalänk: https://www.webforum.nu/p/287148

---

Tråden på webben: https://www.webforum.nu/amne/asp/11733-admin-gränsnitt-och-databaskoppling
