webForumDet fria alternativet

dynamiskt innehåll

ASP

8 svar · 627 visningar · startad av eriks

Medlem sedan apr. 20011 418 inlägg
Frågan#1

Hejhej,

Jag vill ha en sida där endast mitten ändras, alltså liknande om man skulle använda frames. Hur gör jag detta lättast med ett script? Jag tänkte att jag skulle kunna spara infon i olika inc-filer, men hur gör jag så att denna information visas när man klickar på en länk. Antar att det finns ett gäng olika lösningar. (Tänkte att man t.ex. skulle kunna använda Request.ServerVariables("SCRIPT_NAME") , men fick ingen riktigt bra lösning.)

Tack på förhand.

Mvh Erik

Medlem sedan dec. 2002299 inlägg
#2

Här får du ett exempel på en switch!

<%
     Select Case page
     Case 1
%>
<!--#include file="pages/testsida1/default.asp"-->
<%Case 2%>
<!--#include file="pages/testsida2/default.asp"-->
<%Case 3%>
<!--#include file="pages/testsida4/default.asp"-->
<%End Select%>
<%
If Request.QueryString("page")="" Then
page=1
Else
page=int(Request.QueryString("page"))
End if
%>

Också så här kommer länkarna se ut se ut:
<a href="?page=1" title="Testsida1">testsida1</a>
<a href="?page=2" title="Testsida2">testsida2</a>
<a href="?page=3" title="Testsida3">testsida3</a>

Medlem sedan apr. 20011 418 inlägg
#3

Kunde jag kanske kommit på själv, men det gjorde jag inte. Tack!

Medlem sedan juni 2000690 inlägg
#4

Jag skulle föreslå att du använder Server.Execute istället för include file så slipper man att alla filerna inkluderas oavsett om de behövs eller inte.

Medlem sedan aug. 20011 087 inlägg
#5

Håller med Bengan, server.execute är bättre.

t.ex
select case page
case "1"
server.execute "sida1.asp"
case "2"
server.execute "sida2.asp"
end select

Medlem sedan dec. 2002299 inlägg
#6

Förlåt, självjklart ska dte vara så!

Medlem sedan apr. 20011 418 inlägg
#7

Sounds good to me =)

Fast blir inte lösningar som dessa dåligt mottagna av sökmotorerna? Vill de inte att man har en sida som heter undersida.asp för varje sida? Hur kommer man då åt det? Mitt mål är ju att kunna ha det så att jag kan ändra utseendet på sidan i en och samma fil.

Är det då kanske bättre att vända på steken? Skapa undersida.asp, undersida2.asp osv. I varje undersida lägger man sedan en include för "runt om grejerna" (head, topmenyn, sido-bilderna, footern). Skulle alltså bli en include, sedan texten som är unik för just den sidan, sen ytterligare en include. Vad tros om det?

Mvh Erik

Medlem sedan juni 2000690 inlägg
#8

eriks skrev:

Sounds good to me =)

Fast blir inte lösningar som dessa dåligt mottagna av sökmotorerna? Vill de inte att man har en sida som heter undersida.asp för varje sida? Hur kommer man då åt det? Mitt mål är ju att kunna ha det så att jag kan ändra utseendet på sidan i en och samma fil.

Är det då kanske bättre att vända på steken? Skapa undersida.asp, undersida2.asp osv. I varje undersida lägger man sedan en include för "runt om grejerna" (head, topmenyn, sido-bilderna, footern). Skulle alltså bli en include, sedan texten som är unik för just den sidan, sen ytterligare en include. Vad tros om det?

Mvh Erik

Jag är inte helt hemma på hur sökmotorer kryper sidor med querystrings längre, tidigare var det just som du säger att de flesta undvek att indexera sidor med ? i url:en. Dock tror jag att tex Google numera gör det till viss del, vet att en del av mina sidor finns indexerade trots ? i urlen (och regelvidrig html :e ).

Skall du inte ändra på sidorna så ofta så är ju det senare alternativet bra med en inklude-fil som mall upp och nertill och varje undersida.asp innehåller enbart det unika för just den sidan. Då kan du även lägga in sidans titel och meta-taggar som variabler i templaten upptill som du sedan definierar längst upp i undersida.asp.

Man kan även tänka sig en lösning som kombinerar båda, ett skript som går igenom sidorna efter administrering och spottar ut statiska sidor om man nu vill göra det riktigt omständigt. ;)

Medlem sedan aug. 20011 087 inlägg
#9

Vet inte exakt hur sökmotorer behandlar det men ett annat sätt om du vill ha separata sidor är att istället för att inkludera så redirectar du till dom.. header och footer kan du ju sedan inkludera på dom :)

select case page
case "1"
response.redirect "sida1.asp"
case "2"
response.redirect "sida2.asp"
end select

252 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)