Eller når du nu bruger asp, kunne du lave det hele på en side:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Sidens titel</title>
</head>
<body> <!--#include file="menu.asp"-->
Select Case Request.Querystring("id") Case 1 Response.Write "Indhold af side 1" Case 2 Response.Write "Indhold af side 2" Case 3 Response.Write "Indhold af side 3" End Select
Den øverste del (menuen) skal også senere indholde et billede/logo. Og hele ideen er, at brugeren ikke skal gen-indlæse hele siden, hver gang brugeren klikker på et link. Derfor ønsker jeg kun at indlæse indholdssiderne (side_1.asp, side_2.asp, osv.), når der klikkes på et link.
Synes godt om
Slettet bruger
17. august 2003 - 10:19#8
Uha uha, hvor er I hurtige!
Synes godt om
Slettet bruger
17. august 2003 - 10:20#9
Tak Thomas. Jeg vil lige lave en kop kaffe, og rode lidt med det.
Hvis du ikke vil have, at hele siden skal opdateres ved klik på link, er du nødt til at bruge frames. Menuen bliver ikke stående fordi du bruger includes.
Jeg synes nu heller ikke det gør noget at hele siden opdaterer. Det gør næsten alle sider jo efterhånden, fordi man ikke bruger frames så meget mere, men derimod asp/php.
Synes godt om
Slettet bruger
17. august 2003 - 10:29#14
Er du sikker på, at det ikke kan lade sig gøre? Mener at jeg har hørt, at det godt kan lade sig gøre. Men ok, så må jeg vel bare bruge frames igen.
MEN: Hvis jeg alligevel bruger din løsning, er der en enkelt ting jeg ikke lige forstår: ======================================== Index.asp:
<!--#include file="menu.asp"-->
Select Case Request.Querystring("id") Case 1 Response.Write "Indhold af side 1" Case 2 Response.Write "Indhold af side 2" Case 3 Response.Write "Indhold af side 3" End Select ======================================= menu.asp: <a href="default.asp?id=1">Side1</a> <a href="default.asp?id=2">Side2</a> <a href="default.asp?id=3">Side3</a> ======================================== Hertil klart nok (sådan cirka). :~]
Men hvad pokker hedder indholdssiderne så? Side_1.asp eller hvad?
Synes godt om
Slettet bruger
17. august 2003 - 10:35#15
Nåååe, nu kan jeg se det: Det er i Response.Write "Indhold af side 1" at alt mit indhold af indholdsside 1 (tables, pics o.a.) skal være. Det bliver da en lidt rodet affære, er jeg bange for...
Select Case Request.Querystring("id") Case 1 Response.Write "Indhold af side 1" Case 2 Response.Write "Indhold af side 2" Case 3 Response.Write "Indhold af side 3" End Select
Hvis den så bliver uoverskuelig, kan du flytte noget ud i include-filer:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Sidens titel</title>
</head>
<body> <!--#include file="menu.asp"-->
<br><br>
Select Case Request.Querystring("id") Case 1 <!--#include file="side1.asp"--> Case 2 <!--#include file="side2.asp"--> Case 3 <!--#include file="side3.asp"--> End Select
Så har du også på en simpel måde adskilt design og indhold og det er som regel at foretrække.
Synes godt om
Slettet bruger
17. august 2003 - 10:43#21
Hmmm... jeg er nu ikke jublende lykkelig for den løsning. ;~]
MEN: Jeg fandt noget på nettet, som måske er en bedre løsning? Se her: ======================================= <!--#include file="menu.asp"--> <% if request.querystring("side") = "1" then %> <!--#include file="side_1.asp"--> <% elseif request.querystring("side") = "2" then %> <!--#include file="side_2.asp"--> <% else %> <!--#include file="start.asp"--> <% end if %> =======================================
Her er ihvertfald en løsning, hvor der indlæses en indholdsside ("side_1.asp, side_2.asp, osv.) ved klik på et link, ikke?
Måske du gidder at hjælpe mig med at tilpasse denne løsning i stedet for? Som sagt: Jeg er bestemt ikke expert i asp...
Det smarte ved det er, at du i default.asp laver alt design, i menu.asp din menu og i side1, 2, 3 laver du indholdet til siderne. Prøv at bruge dette og så lav menu.inc, side1.inc osv. og se om det ikke kan bruges:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Sidens titel</title>
</head>
<body> <!--#include file="menu.asp"-->
<br><br>
Select Case Request.Querystring("id") Case 1 <!--#include file="side1.asp"--> Case 2 <!--#include file="side2.asp"--> Case 3 <!--#include file="side3.asp"--> Case Else Response.Write "Siden blev ikke fundet." End Select
hehe, ja det er derfor jeg sætter min outlook til at hente mail hvert minut. :)
Synes godt om
Slettet bruger
17. august 2003 - 10:49#26
Ved du hvad? Jeg roder selv lidt videre med dit sidste forslag. Håber at jeg kan finde ud af det. *gys*
Men jeg vil ihvertfald give dig point med det samme, som mange tak for hjælpen, Thomas. :~]
Synes godt om
Slettet bruger
17. august 2003 - 10:53#27
Du skriver: "...Prøv at bruge dette og så lav menu.inc, side1.inc osv..." Det vil altså sige, at menusiden og indholdssiderne skal hedde .inc som fil-type-navn?
Undskyld, min fejl. Nej hvis du kalder dem .inc vil andre kunne hente dem på serveren. Kald dem menu_inc.asp osv. istedet og husk at skrive det samme i din default.asp, hvor de kaldes fra.
Hvis jeg ikke var forvirret før, er jeg det ihvertfald nu. :~(
Lige for at samle alle brikkerne et sted: ======================================= default.asp :
<!--#include file="menu.asp"--> <br><br> Select Case Request.Querystring("id") Case 1 <!--#include file="side1.asp"--> Case 2 <!--#include file="side2.asp"--> Case 3 <!--#include file="side3.asp"--> Case Else Response.Write "Siden blev ikke fundet." End Select ======================================= menu.asp :
<!--#include file="menu.asp"--> <br><br> <% Select Case Request.Querystring("id") Case 1 <!--#include file="side1.asp"--> Case 2 <!--#include file="side2.asp"--> Case 3 <!--#include file="side3.asp"--> Case Else Response.Write "Siden blev ikke fundet." End Select %> ======================================= menu.asp :
Det er helt i orden. Men har du installeret IIS på din computer? Bruger du Windows XP? ASP er et server-side sprog, som skal afvikles af en webserver (fx IIS) - det kan ikke bare vises direkte i din browser.
Synes godt om
Slettet bruger
17. august 2003 - 11:22#40
Jo, jeg har win2000 dk SP1 med IIS 5 installeret. Og den eksekverer ASP-filer helt fint. Jeg har lige testet for at være helt sikker. :~]
Synes godt om
Slettet bruger
17. august 2003 - 11:28#41
Nu har jeg prøvet en gang til, men nu er siden bare helt blank.
Select Case Request.Querystring("id") Case 1, "" <!--#include file="side1.asp"--> Case 2 <!--#include file="side2.asp"--> Case 3 <!--#include file="side3.asp"--> Case Else Response.Write "Siden blev ikke fundet." End Select %> ======================================= menu.asp :
Damn!! Det er nok fordi det er søndag morgen.... Dette skulle kunne gøre det:
default.asp =========================== <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Sidens titel</title>
</head>
<body> <!--#include file="menu_inc.asp"-->
<br><br> <% Select Case Request.Querystring("id") Case 1, "" %> <!--#include file="side1_inc.asp"--> <% Case 2 %> <!--#include file="side2_inc.asp"--> <% Case 3 %> <!--#include file="side3_inc.asp"--> <% Case Else Response.Write "Siden blev ikke fundet." End Select %>
Jeg har endda både omdøbt filerne, flyttet >body> tagget (min Dreamweaver brokkede sig over dette), replace Case 1, "" med Case 1 og andre ting og sager. Men ligemeget hjælper det.
Men godt at det virker hos dig, Thomas! Så er jeg ihvertfald på rette vej!
Synes godt om
Slettet bruger
17. august 2003 - 11:47#48
Tror at jeg bliver nødt til at kaste 30 point mere efter dig, for al det arbejde... ;~]
<% Select Case Request.Querystring("id") Case 1, "" %> <!--#include file="side1_inc.asp"--> <% Case 2 %> <!--#include file="side2_inc.asp"--> <% Case 3 %> <!--#include file="side3_inc.asp"--> <% Case Else Response.Write "Siden blev ikke fundet." End Select %>
Jo, nu virker det helt perfekt! Tak for din ihærdighed og hjælp! :~]
Synd at min ide med alt dette, ikke kunne bruges med include-filer. Altså at undgå at opdatere selve menu-filen. Så jeg må nu arbejde videre med frames istedet for. Men jeg har lært en masse godt! Tak for det, Thomas!
Jeg vil gerne tildele dig dobbelte point (30 point mere), men hvordan gør jeg det? Opretter et nyt spørgsmål, bare med henvisning til dette, og tildeler dig 30 point? Eller hvordan?
Ja ja, du kan sikkert bruge dem på et andet spørgsmål en dag.. Og sku' det være en anden gang. :)
Synes godt om
Ny brugerNybegynder
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.