Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Artiklar / Titel på artikeln

Skriv inte för mycket kod, återanvänd den istället.

Postad 2005-02-25 av Benni Svensson i sektionen ASP.NET, C#, Okategoriserat med 3 Kommentarer | Läst av: 5819, Betyg: 100%

Förord

Som vanligt så kom jag på mig själv, att jag gång skrev samma koder, gång på gång, sida upp och sida ner. Det var alltifrån headern (början på en ASP-fil), till footen(slutet på samma fil) till databas kopplingarna, tabeller osv. Jag förstod att det skulle vara av vikt, att komma på något radikalt. Av en händelse så började jag att snegla på subbar, men inte som jag normalt brukade använda dem, utan istället skicka med argument och på så sätt få tillbaka ett (eller flera) värde/n. Det jag vill försöka att beskriva här, är alltså den typ av kod skrivning, som handlar om att använda sub rutiner med argument, och hur Du enkelt kan applicera detta i Dina ASP - sidor.
Innehåll
  » Inledning
  » Header.asp
  » Foter.asp
  » Styles.css
  » Dataconn.asp
  » TableAndButtons.asp
  » Allt ihop tillsammans..
  » Avslutningsvis
Relaterade artiklar


Inledning


Precis som jag har gjort i mina tidigare artiklar Artikel [Ett Administrations script för webb baserad databas Del 1] Artikel [Ett Administrations script för webb baserad databas del 2] och Artikel [Ett Administrations script för webb baserad databas del 3] , så använder
jag en fil(Header.asp) i början av mina ASP-filer, och en fil(Foter.asp) till slutet av ASP-filen.

Jag använder mig dessutom styles.css, dataconn.asp och TableAndButtons.asp.


Header.asp

Denna fil ser i stort sett ut som tidigare…


<%
Option Explicit
Response.buffer = True
Dim titel,Connection,RS,SQL,Number
If request.Querystring("message")="" then
titel ="Min Administation"
else
titel = request.Querystring("message")
End If
%>


<%=titel%>





Vi använder oss av Option Explicit, den är väldigt viktig för den låter oss inte glömma bort att göra
våra variabler och dimma dessa.
Response.buffer = True innebär att vi skickar ingenting förrän ASP-kompilatorn har kompilerat
all ASP kod.
Därefter så kommer en if-sats, som tar hand om titeln på våra sidor, det kan ju vara trevligt att
ha den korrekt.
Sen så kör vi HTML-koden, och länkar ihop med css-mallen.




Foter.asp


Det är ju ganska så behändigt att använda dessa filer som include-filer.








Eftersom filen är så liten, så behövs knappas någon kommentar om den.


Styles.css


Jag visar bara en del av stilmallen, vill ni ha hela så kan Du titta på de föregående artiklarna.


.Dark
{
FONT-FAMILY:verdana,geneva;
BACKGROUND-COLOR:#F4F1F1;
COLOR:#804040;
FONT-SIZE: 10pt;
FONT-WEIGHT:bold;
}
.Light
{
FONT-FAMILY:verdana,geneva;
BACKGROUND-COLOR:#FFFFFF;
COLOR:#804040;
FONT-SIZE: 10pt;
FONT-WEIGHT:bold;
}
TD
{
BORDER-BOTTOM: black thin;
BORDER-LEFT: black thin;
BORDER-RIGHT: black thin;
BORDER-TOP: black thin;
COLOR: #804040;
FONT-FAMILY: trebuchet, verdana, Arial, geneva;
FONT-SIZE: 8pt;
}


Lägg gärna ihop detta med Din tidigare stilmall.




Dataconn.asp


När det gäller data connection, så vet jag att man kan diskutera för och emot hur mycket,
och hur länge som helst på vilket som är det bästa sättet att ansluta en databas, men
man väljer ju sin egen favorit. Så här har jag valt att ansluta databasen.


<%
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="
& server.MapPath("MinDataBas.mdb")
%>


Jag använder mig av OLEDB Jet drivrutinerna, helt kanonbra och det blir sällan några problem.


TableAndButtons.asp


Här kommer nu hela hemligheten…
…nja inte riktigt, men en bit av den, lite måste ni själva upptäcka, när jag väl har
pekat ut hur Du nu skall göra.
Vad jag ville skicka med för argument till subben är:


  • Tabellnamn för databasen
  • En text som förklara vad som händer när man trycker på knappen
  • Knappens namn
  • Ett class namn för still-mallen


    Dessutom så ville jag att den skulle hantera tr & td-taggarna och samt lägga till en knapp.



    sub tTablesCountDb(tTableName,aApplication,buttonName,sStyle)'använd i Admin
    Set Number = connection.Execute ("Select Count(*) As Antal FROM "
    & tTableName &" ")
    response.write "
     " & aApplication & "
    " & _
    " " & Number("Antal") & " poster
    registrerade. 
    " & _
    " VALUE=""   ""> " & _
    aApplication &"
    "
    End Sub


    Om ni nu tittar på denna sub, så ser ni att den vill ha:
    tTableName dvs. den databas tabell som Du skall räkna antalet poster på.
    aApplication dvs. den text som Du vill ha för att förtydliga vart som händer
    när någon klickar på knappen.
    buttonName dvs. det namn som Du vill ge knappen.
    sStyle dvs vilken class som Du vill ha ifrån stilmallen.

    Sen när vi kallar på alltihopa så..


    Allt ihop tillsammans..


    Då kör vi







    Min Administation







    <%
    call tTablesCountDb("t_links","Editera Länkarkiv","Links","Dark")
    call tTablesCountDb("Prod","Editera Butiken","Prod","Light")
    call tTablesCountDb("gastbok","Editera Gästboken","Gast","Dark")
    call tTablesCountDb("Nyheter","Editera Nyheter","News","Light")
    call tTablesCountDb("Quize","Quize","Editera Quize","Dark")
    call tTablesCountDb("t_songtitlar","Editera ArrReg","ArrReg","Light")
    call tTablesCountDb("t_Lyssnat","Editera Lyssnare","Lyssnat","Dark")
    call tTables("Random Text","Random","Light")

    Connection.close
    Set Connection=Nothing
    Response.write"
    "

    If Len(Request.Form("btnLinks"))
    Then Response.Redirect ADOMenu.asp?message=Min Admin - Länkarkiv"
    If Len(Request.Form("btnProd"))
    Then Response.Redirect ADOMenu.asp?message=Min Admin - Butiken"
    If Len(Request.Form("btnGast"))
    Then Response.Redirect ADOMenu.asp?message=Min Admin - Gästboken"
    If Len(Request.Form("btnNews"))
    Then Response.Redirect ADOMenu.asp?message=Min Admin - Nyheter"
    If Len(Request.Form("btnQuize"))
    Then Response.Redirect ADOMenu.asp?message=Min Admin - Quize"
    If Len(Request.Form("btnArrReg"))
    Then Response.Redirect ADOMenu.asp?message=Min Admin - ArrReg"
    If Len(Request.Form("btnLyssnat"))
    Then Response.Redirect "MusikArkivetReg.asp?message=Min Admin - Lyssnare"
    If Len(Request.Form("btnRandom"))
    Then Response.Redirect Rand.asp?message=Min Admin - Random Text"
    %>



    (OBS if-satserna måste skrivas på en rad)



    Har Du nu gjort allting rätt, så kan det se så här ut:





    Avslutningsvis


    Med den här tekniken, så är det väldigt lätt att implementera en massa olika möjligheter och
    händelser till Dina ASP-sidor.

    Om nu inte detta räcker som en början, så får Du gärna kontakta mig, så skall jag komplettera
    med ytterligare artikel om användningsområde för sub med argument.

    Med vänlig hälsning
    Benni Svensson
  • Upp

    3 Kommentarer


    1. Pelle Johansson
      12 apr 2005

      Här visar du tydligt på att användare bör tänka sig för när de programmerar. Planering är a och o. Ju mer grundarbete desto bättre rutiner, minder kod och möjligheter till återanvändning.


    2. Cerrolyn Wedin
      12 apr 2005

      En bra artikel som är lätt att förstå ;o)


    3. Kristoffer Ljungqvist
      7 jun 2005

      Men med hans sätt att ansluta så måste den del som ansluter till databasen (Sidan) alltid ligga i en och samma mapp. Har man en sida som är uppbyggd så här. ' huvudmapp med sida. ' under mapp med sida ' under mapp med sida 2 då kan jag inte med hanns include infoga databas kopplingen till en under sida och till under sida 2. Då måste jag ha ytterligare 1 fill för undermappar för sida och sida 2. Kan man kringå det på något sätt? har testat men inte fått hans sätt att funka.

    Skriv en kommentar på artikeln

    Ditt betyg på artikeln



    Kommentar:





    Nyligen

    • 09:09 Vill du köpa medicinska tester?
    • 12:47 Vem beviljar assistansen – kommune
    • 14:17 Någon med erfarenhet av hemstädnin
    • 14:14 Bör man använda sig av en båtförme
    • 14:12 Finns det någon intressant hundblo
    • 14:25 Tips på verktyg för att skapa QR-k
    • 14:23 Tips på verktyg för att skapa QR-k
    • 20:52 Fungerer innskuddsbonuser egentlig

    Sidor

    • Hem
    • Bli bonusmedlem
    • Läs artiklar
    • Chatta med andra
    • Sök och erbjud jobb
    • Kontakta oss
    • Studentlicenser
    • Skriv en artikel

    Statistik

    Antal besökare:
    Antal medlemmar:
    Antal inlägg:
    Online:
    På chatten:
    4 569 158
    27 952
    271 704
    1 123
    0

    Kontakta oss

    Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

    © 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
    • Om
    • Kontakta
    • Regler
    • Cookies