Hej, Jag håller på och bygger en sajt som, när den är klar kommer att bestå av circka. 150 sidor. Beror helt och hållet på hur grym du är på att koda, om du använder något lager som sköter allt detta (com objekt) eller om du gör det front-end. ;) (Front-end (Presentationslager) = lägger funktioner och dylikt direkt ute på sidan istället för att låta ett databaslager, ett affärslager (com objekt) sköta allting..) Eftersom server laddar hela sidan kommer ju det till massa med overhead. Så det är inte bra att göra på detta sättet. Bättre att försöka lägga upp koden på olika sidor. Ursäkta min okunnighet. "overhead" är grovt översatt till "mer än növändigt" Om man kodar lite slarvigt (eller om man kodar på nätterna, det blir samma sak) så har det i alla fall hos mig blivit en tendens att en del sidor kanske slöas upp alltför mycket genom att man kör andra sidor också (om man glömt att skriva End If).. En fråga till från en okunnig glad knackare. Om nu server läser in allting. Frågan är om han utför allt som står i koden. Jag menar: om en if-sats inte stämmer så körs väl ändå inte den koden. Och då har man belastat servern med, mer att läsa in. Sparas inte sidan i cashen på servern? Hej hej!! Jag kan juh oxå säga som så att med en massa olika sidor, så e d enklare att hålla iordning på koden och dylikt.. =) Hmm, en liten idé jag får - om man har en sida som ser likadan ut och endast vill ändra på innehållet.Hela sajten på en och samma sida?
Fråga
Jag har gjort den så att alla sidor använder en och samma sida. Innehållet styr jag med hjälp av Request.Querystring("status") och Request.Querystring("funk"). Min undran är om det är dumt att göra på detta viset. Det blir ju en en del if-satser. Slöar det ner servern? Är det dumt att göra på detta sättet.
/Tack på förhand.Sv: Hela sajten på en och samma sida?
Tänk såhär...
1. Databaslager = Allting som har med databasen att göra skall du låta den sköta (Store procedures osv)
2. Affärslager = Com objekt, om du är riktig duktig så skall com objektet sköta all hantering av in-och utdatan, inget mer. In med data till databasen.. ut med datan ifrån databasen.
3. Presentationslagret = Det som klienten ser, här skall du bara på ett enkelt sätt hantera in-och utdata utan massa if-for-next-dountil tjafs. (det skall affärslagret sköta till den grad det går givetvis)
Om du låter presentationslagert ta alla smällar så kan du räkna med att din applikation kommer att vara kortlivad och din server kommer med allra största säkerhet att bli arg på dig för att du utsätter den för en oumbärlig informationshantering.. ;)
Men rent spontant så låter det inte som bra ide. Det blir som sagt en del If-satser och det slöar generellt ner din server eftersom han hela tiden måste kolla igenom satserna för att göra rätt saker.
Berätta gärna mer om tankarna bakom sajten, vad den skall användas till osv, kommer den att "attackeras" av många samtidiga användare osv..
Det kan ju vara som så att det inte är en dum ide det du gör / skall göra beroende på vad det är för sajt och vad den skall användas till.Sv: Hela sajten på en och samma sida?
Sv: Hela sajten på en och samma sida?
Vad är overhead.
Min tanke med hela ideén var att det skulle vara enkelt att ändra utseende på sidan, Vilket det nu är.
Visst kunde man använda sig av CSS, men min erfarenhet av detta är att det inte funkar i gamla lästare. Jag vill inte göra olika versioner av sidan utan den ska funka för alla. Är det tänkt. Vilket den nu gör. Peppar, peppar ta i trä.
Som sagt, vad är overhead.
Tack på förhand.Sv: Hela sajten på en och samma sida?
Eftersom bar en bit av din kod kommer köras. ÄR servern tvungen att ladd även den övriga koden. Vilket gör att varje sida tar mer tid att ladda och kräver mer resurser av servern.
Jag anser att layoten inte är ett så starkt argument.
Hur ofta ändrar du layouten på din site?Sv: Hela sajten på en och samma sida?
Annars är det väl ett bra sätt att koda hemsidor på, tänk dock på att inte använda samma varibabelnamn i filer, det fungerar inte då dessa omdifinieras i så fall.Sv: Hela sajten på en och samma sida?
Rent spontant måste jag säga att efter att skapat cirka 150 sidor så går det väldigt snabbt att surfa på sidan.
Hur som helst är det en intressant ide med bara en sida.
Tack på förhand
/DavidSv: Hela sajten på en och samma sida?
om jag hade varit i ditt ställe så hade jag använt mej av en massa olika Functions.
Vilket kanske många gör, Querystrings blir i längden ganska segt om du har väldigt många.
MVH
//JonnieSv: Hela sajten på en och samma sida?
Lycka till
//JonnieSv: Hela sajten på en och samma sida?
Man bygger upp sidan i en databas, t.ex..
Tabell [Pages]
pageID Header Content
-------------------------------------------------------
default Första sidan Hej och välkommen...
info Info-sidan Lite kort info...
copy Copyright-sida Info om copyright...
Skapa sedan en sida med denna meny:
HEM | INFO | COPY
</code>
I default.asp kör du detta för att kontrollera om det är default som ska visas:
<code>page = Request.QueryString("pageID")
If page = "" Then
page = "default"
End If
</code>
Sedan detta för att hämta de värden som hör till just den sidan:
<code>Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open ("driver={Microsoft Access Driver (*.mdb)}; dbq=" & Server.MapPath("..\databas.mdb"))
SQL = "SELECT * From Pages WHERE pageID = '" & page & "'"
Set rs = Connection.Execute(SQL)
header = rs("Header")
content = rs("Content")
</code>
När du har gjort detta är det bara att lägga ut dessa två där du vill ha dem på sidan:
<code><%=header%> och <%=content%>
</code>
Denna lösning fungerar nog bäst på små sidor och bör undvikas vid större projekt. En nackdel som jag direkt kan se är om man har en sida med t.ex. en gästbok på, eftersom det då krävs annan asp-kod för denna. Lösningen då är att skapa en egen sida för just gästboken.