Avatar billede bakarden Nybegynder
20. november 2005 - 04:08 Der er 20 kommentarer og
1 løsning

Include file menu

Goddag et hurtigt spørgsmål

Jeg har en side som er delt i 2, en menu i venstre side og indholdet i højre side, jeg har så lavet det sådan at menuen skal åbne links fra venstre side og så vise indholdet i tabellen ved siden af..

Mit problem er at når jeg åbner filen viser den bare indholdet for sig selv og ikke i tabellen?

Koden er nedenfor

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Tip-Top</title>
<link href="styles.css" rel="stylesheet" type="text/css">


<meta name="Generator" content="Stone's WebWriter 4">
</head>

<body background="back.jpg">
<!-- Header -->

<tr><table width="800" height="200" border="0" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0">
<tr>
    <td><img src="header.png" align="bottom" alt=""></td>
</tr>
</table>
</tr>
<br>
<!-- menuen -->
<table width="800" height="500" border="0" bgcolor="#000000" cellspacing="0" cellpadding="0" bordercolor="#6F0000">
<tr>
    <td valign="top" width="200" bgcolor="#F4F4F4">
    <br>
<table border="0" bgcolor="#6F0000" cellspacing="0" cellpadding="0">
<tr>
    <td width="150" height="8" bgcolor="#6F0000"></td>
</tr>
</table>
<h1>
Menu
</h1>
<h3>
- <a href="side2_inc.asp">menu</a> <br>
- <a href="http://www..dk">menu</a> <br>
- <a href="http://www..dk">menu</a> <br>
- <a href="http://www..dk">menu</a> <br>
- <a href="http://www.">menu</a> <br>
- <a href="http://www.">menu</a> <br>
</h3>

<!-- Tekst område -->



    <td valign="top" width="580" bgcolor="#F4F4F4">
<br>
<table width="500" height="8" border="0" bgcolor="#6F0000">
<tr>
    <td></td>
</tr>
</table>
<br>
<h2>
<!--#include file="side2_inc.asp"-->
<%
Select Case Request.Querystring("id")
    Case 1, ""
        %><br>
        <!--#include file="side2_inc.asp"-->
        <%
    Case Else
        Response.Write "Siden blev ikke fundet."
End Select
%>

</h2>
</td>
</tr>


</table>

<br>
<!-- Bund -->
<table width="800" height="20" border="0" bgcolor="#F4F4F4" cellspacing="0" cellpadding="2" bordercolor="6F0000">
<tr>
    <td bgcolor="#F4F4F4"> <div style="text-align:center">Copyright - Tlf 75757575</div></td>
</tr>
</table>



</body>
</html>
Avatar billede apo Praktikant
20. november 2005 - 04:58 #1
Først og fremmest, bruger du en helt forkert DOCTYPE i forhold til den kode, du skriver. Din kode har intet med XHTML, at gøre, hvorfor du til at begynde med bør gå over til følgende HTML-DOCTYPE:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Dernæst er din HTML fuld af fejl og uhensigtsmæssigheder. Kast blot et blik på den del, din include er placeret:

</table>
<br>
<h2>
<!--#include file="side2_inc.asp"-->
<%
Select Case Request.Querystring("id")
    Case 1, ""
        %><br>
        <!--#include file="side2_inc.asp"-->
        <%
    Case Else
        Response.Write "Siden blev ikke fundet."
End Select
%>

</h2>
</td>
</tr>

</table>

Du afslutter ovenstående med et table, sætter en <br> og vil inkludere en hel side i et h2-element. Dernæst afslutter du med en </td>, en </tr> og et </table>, uden at være begyndt på et nyt table - Og jeg kunne blive ved.

Selv bodysektionen indleder du med en <tr>, hvor man ved korrekt HTML indleder med et <table>-element.

Jeg var lige ved at vove mig ud i, at tilrette din kode for dig, men opgav hurtigt (Det er for uoverkommeligt - Der er flere fejl i den viste kode end i mit første HTML-dokument lavet i FrontPage; Og der var mange fejl).

Svaret på dit problem er, at din HTML langt fra er i orden. Derfor kan den ikke vises korrekt i browseren. Omskriv koden til korrekt HTML, så skal du se mirakler :-)
Avatar billede apo Praktikant
20. november 2005 - 05:14 #2
Tilføjelse:

Når man indsætter et table, indleder man med <table>-elementet. Derefter et <tr>-element, og så et <td>-element (Og lukker selvfølgelig td'en med </td>). Man afslutter et table med </tr> og </table>:

Eksempel:

<table>
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>

Du bliver nød til at lære hvordan du skriver HTML, hvis du vil have at det skal fungere efter hensigten - Der er ingen vej udenom.
Avatar billede knudgert Nybegynder
20. november 2005 - 05:40 #3
Udover den meget fejlfyldte kode, så har spørgsmålet ikke noget med asp at gøre.

Det er htmloutputet du ønsker skal få en side til at åbne i højre side og det kan du ikke.

Du bruger asp til at inkludere indhold, det der sksl gå igen på siderne, f.eks. menuen og så har du ellers siderne med det nye indhold.

Ellers skal du bruge frames og det kan _ikke_ anbefales.
Avatar billede apo Praktikant
20. november 2005 - 05:47 #4
Nå, nu hjælper jeg dig alligevel lidt på vej. Jeg har lavet noget, ud fra min egen fortolkning af det du selv forsøgte på:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Tip-Top</title>
<link href="styles.css" rel="stylesheet" type="text/css">
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body background="back.jpg">

<table width="800" bgcolor="#F4F4F4" cellspacing="0" cellpadding="0" border="0">
    <tr>
        <!-- Header -->
        <td width="800" height="200" bgcolor="#FFFFFF" colspan="2"><img src="header.png" width="800" height="200" border="0" alt=""></td>
    </tr>
    <tr>
        <td bgcolor="#6F0000" width="800" height="8" colspan="2"></td>
    </tr>
    <tr>
        <!-- Menu -->
        <td width="800" height="500" valign="top">
            <h1>Menu</h1>
            - <a href="side2_inc.asp">menu</a><br>
            - <a href="http://www..dk">menu</a><br>
            - <a href="http://www..dk">menu</a><br>
            - <a href="http://www..dk">menu</a><br>
            - <a href="http://www.">menu</a><br>
            - <a href="http://www.">menu</a></td>
       
        <!-- Indhold -->
        <td width="800" height="500" valign="top">
<%
Select Case Request.Querystring("id")
    Case 1, ""
%>
        <!--#include file="side2_inc.asp"-->
<%
    Case Else
        Response.Write "Siden blev ikke fundet."
End Select
%>
        </td>
    </tr>
    <tr>
        <!-- Bund -->
        <td width="800" height="20" align="center" colspan="2">
            Copyright - Tlf 75757575
        </td>
    </tr>
</table>

</body>
</html>

Så må du selv rette til og tilpasse det som du vil have det (Men vær sikker på at det, du ændrer skrives som korrekt HTML :-)
Avatar billede apo Praktikant
20. november 2005 - 06:02 #5
Jeg har lige opdaget en kæmpefejl, så du får en helt ny udgave:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Tip-Top</title>
<link href="styles.css" rel="stylesheet" type="text/css">
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<meta name="Generator" content="Stone's WebWriter 4">
</head>
<body background="back.jpg">

<table width="800" bgcolor="#F4F4F4" cellspacing="0" cellpadding="0" border="0">
    <tr>
        <!-- Header -->
        <td width="800" height="200" bgcolor="#FFFFFF" colspan="2"><img src="header.png" width="800" height="200" border="0" alt=""></td>
    </tr>
    <tr>
        <td bgcolor="#6F0000" width="800" height="8" colspan="2"></td>
    </tr>
    <tr>
        <!-- Menu -->
        <td width="150" height="500" valign="top">
            <h1>Menu</h1>
            - <a href="side2_inc.asp">menu</a><br>
            - <a href="http://www..dk">menu</a><br>
            - <a href="http://www..dk">menu</a><br>
            - <a href="http://www..dk">menu</a><br>
            - <a href="http://www.">menu</a><br>
            - <a href="http://www.">menu</a></td>
       
        <!-- Indhold -->
        <td width="650" height="500" valign="top">
            <h1>Indhold</h1>
            Her indsætter du indholdet/teksten.
        </td>
    </tr>
    <tr>
        <!-- Bund -->
        <td width="800" height="20" align="center" colspan="2">
            Copyright - Tlf 75757575
        </td>
    </tr>
</table>

</body>
</html>

Og som knudgert påpeger, bør du indsætte dit indhold på en anden måde end via en include; Enten ved at skrive indholdet manuelt ind på siden (og ved at have flere fysiske sider/dokumenter) eller ved at hente indholdet fra en database som f.eks. Access.
Avatar billede bakarden Nybegynder
20. november 2005 - 11:27 #6
Først og fremmest koder jeg i i stones som fremgår i koderne
At jeg havde glemt at lukkke en tabel kan diskuteres mit erfaring med HTML
Spørgsmålet er stadigvæk hvad jeg gør forkert med hensyn til koden omkring mine include filer... og hold jeres arrogante smileys væk fra den her debat.
Avatar billede apo Praktikant
20. november 2005 - 14:47 #7
Hvad har det med sagen at gøre, at du koder i Stone's? Og så havde du, til din information flere fejl end blot problemer med at _begynde_ tabellerne (Hvis du kigger på den _ekstremt_ sjuskede kode i dit første indlæg).

Spørgsmålet var også: "Mit problem er at når jeg åbner filen viser den bare indholdet for sig selv og ikke i tabellen?"

- Hvilket jeg fortalte dig, skyldtes at HTML'en langt fra var korrekt skrevet.

"og hold jeres arrogante smileys væk fra den her debat."

Hvor finder du arrogance i mine eller i knudgerts indlæg? Jeg har indtil nu brugt mere end en time på dit spørgsmål - Hvor er det arrogante i det?

Det vil jeg gerne have et svar på, inden jeg overvejer om jeg vil ofre mere tid på dig og ASP-delen i dit spørgsmål.

... Og så sætter jeg smilies hvor det passer mig, når jeg skal hjælpe andre. Det er der ingen, der skal bestemme for mig :-)
Avatar billede knudgert Nybegynder
20. november 2005 - 15:20 #8
>bakarden
Det er såre simpelt, du kan _ikke_ det du ønsker.
Du kan _ikke_ åbne en anden side i din tabel, undtagen hvis du vil bruge frames, som kunne være en <iframe>.

Men det er den mest uhensigtsmæssige måde at gøre det på.
Avatar billede bakarden Nybegynder
20. november 2005 - 17:32 #9
Undskyld hvis hensigten med jeres smiley og hjælp, men prøv at læse det i selv skriver, jeg føler mig som en idiot når jeg læser det..
jeg forstod det med frontpage som noget nedladende, men det var mig som havde læst forkert

Det må være det Finn nørby gård show jeg var så lam at se igår, som har taget mit temperament af mig og det undskylder jeg

Tak for hjælpen det er i orden nu, hvis i vil have noget point så bare smid et accepter felt ind.

For mig virker ":-)" arrogant.
Avatar billede apo Praktikant
20. november 2005 - 18:26 #10
Aaargh! Prøver igen... Jeg havde lige skrevet et længere indlæg, men Eksperten smed det i skraldespanden da jeg sendte det :-(

bakarden > Helt i orden :-)

- For mig er der intet nedladende eller arrogant i en :-) - Den viser hvordan mit 'humør' i indlægget skal opfattes.

:-) positiv :-( negativ :-/ utilfreds eller misfornøjet.

Det med FrontPage skulle ikke opfattes som nedladende. Jeg var blot overrasket over at se så mange fejl i en kode. Det er jo vigtigt at HTML'en skrives korrekt da det har betydning for hvordan dine sider ser ud i en browser.

Du skal bestemt ikke føle dig som en idiot, men bør i stedet se mine indlæg som noget konstruktivt. Jeg påpegede kun de fejl, der omhandlede din kode; Hvilket er den eneste måde du kan finde ud af hvad du har gjort galt (Så du kan lære hvordan det skal gøres korrekt).

Der er ingen der forventer at du skal kunne skrive perfekt HTML lige med det samme. Det tager tid at lære.

Jeg begyndte med FrontPage men har med tiden lært selv at skrive HTML ved, at være her på Eksperten. Jeg har stillet en masse spørgsmål, og har læst en masse spørgsmål for at finde ud af hvordan korrekt HTML ser ud/skal skrives. Og så har jeg fået en del hjælp af brugerne olebole og roenving her på Eksperten - De er dygtige til at lære fra sig :-)

Fortsæt med at arbejde med din HTML, læs en masse spørgsmål her på Eksperten; og opret så spørgsmål når du sidder fast (Oplever problemer lige som da du stillede spørgsmålet her). Det er den bedste måde at lære på.

Du kan også læse om HTML-opbygning via følgende links:

www.html.dk (God for begyndere - Omhandler grundlæggende HTML, CSS, ASP mv.)
www.w3schools.com (Også god for begyndere - Omhandler også grundlæggende HTML, CSS og ASP)
www.w3.org (Kort fortalt: Et meget omfattende website med HTML og CSS - W3C er den officielle organisation, der udvikler og ensretter HTML-sproget, så det ser ens ud i alle browsere)

ASP:

Har du mulighed for at benytte Access-databaser?
Avatar billede apo Praktikant
20. november 2005 - 18:31 #11
Kunne du forresten bruge den HTML jeg lavede til dig? Ser siden nu ud som du ønsker det?
Avatar billede bakarden Nybegynder
20. november 2005 - 19:00 #12
Ja jeg kan nok lidt mere end du formoder :P

www.bacarden.dk < min egen
www.bacarden.dk/tiptop2/default.asp < det jeg er igang med

Jeg har arbejdet med access før, og jeg har et par gode wrox bøger omhandlende ASP.
At jeg er lidt doven omkring HTML, det er jo bare det :D

Og ja jeg brugte noget af det kode du lavede i det sidste eksempel, det var jo stillet godt op, og nu fandt jeg ud af de små dumme fejl jeg havde lavet.. Og kan godt se det så lidt kludret ud.
Avatar billede apo Praktikant
20. november 2005 - 19:25 #13
Ja, det må jeg medgive dig. Det ser noget bedre ud end jeg havde... 'frygtet' ;-)

Dog er det stadig vigtigt, at du er opmærksom på fejl og uhensigtsmæssigheder i din kode; Som f.eks. det at du har følgende linje i din indholdssektion:

</html><link href="css/style.css" rel="stylesheet" type="text/css">

asd 1

Det er en direkte fejl. Der _må_ kun være ét </html>-tag per dokument, og det _skal_ befinde sig nederst på siden (Efter </body>).

Det er muligt, at det ikke umiddelbart ødelægger noget lige nu. Men på sigt vil alle de små fejl, kunne undergrave og ødelægge kvaliteten af dit site - Især når siden skal opleves fra andre browsere som Firefox og Opera (Der skal ikke meget til før de viser HTML'en anderledes end ønsket).

I øjeblikket er browserne rimelig overbærende med fejl og mangler, men med de fremtidige versioner bliver fejltolerancen mindre og mindre; I takt med at reglerne for hvordan browserne fortolker din kode, bliver mere stringente.

Derfor er det vigtigt at du allerede nu retter alle fejl og ukorrektheder mens du designer; ikke først når dit site er kørende (Hvor det kan give dig nogle alvorlige problemer når du skal fejlrette). Du kommer med andre ord til at 'betale' dyrt for din nuværende dovenskab, på et senere tidspunkt, hvis du ignorerer fejlene nu.

Jeg kan se at du har fået ASP'en til at virke; Så jeg behøver vel ikke at komme med forslag der. Jeg lægger et svar :-)
Avatar billede apo Praktikant
20. november 2005 - 19:32 #14
Et godt værktøj er W3's HTML-validator: http://validator.w3.org/

Validatoren kan bruges til at finde fejl i din HTML-struktur (Du indtaster blot et link, så kører det af sig selv). Herefter fortæller validatoren om der er fejl, og hvilke fejl der er tale om.

Du kan læse alt om hvordan korrekt HTML skal se ud og hvordan det opbygges, her:

http://www.w3.org/TR/html401/struct/global.html
Avatar billede apo Praktikant
20. november 2005 - 21:21 #15
Tak for points. Jeg håber at du fik noget ud af mine indlæg :-)
Avatar billede Slettet bruger
20. november 2005 - 23:22 #16
knudgert:
Hvad er der galt med frames (primært iframes)?

apo:
Hvad er der galt med asp/php/jsp include-filer?


Bortset fra problemet med deeplinking, selvfølgelig.
Avatar billede apo Praktikant
20. november 2005 - 23:26 #17
extend > Ikke forstået?
Avatar billede Slettet bruger
20. november 2005 - 23:31 #18
apo:
Du skriver her: 20/11-2005 06:02:55
"Og som knudgert påpeger, bør du indsætte dit indhold på en anden måde end via en include..."
Avatar billede apo Praktikant
20. november 2005 - 23:44 #19
Jeg ville selv foretrække at indsætte indholdet fra en database, da det i mine øjne giver nogle flere muligheder. Men det afhænger selvfølgelig af indholdet, og hvordan man påtænker at bruge det; Om der skal foretages særlige dataudtræk mv.
Avatar billede Slettet bruger
21. november 2005 - 09:44 #20
apo:
Ja, men du drejer uden om spørgsmålet. :-)

Netop fordi bakarden´s spørgsmål lyder på: "Include file menu", og at du har fjernet hans menu fra dit oplæg.

Hans eget oplæg lød på:
<!-- Indhold -->
<!--#include file="side2_inc.asp"-->
osv.

Men du foreslog:
<!-- Indhold -->
        <td width="650" height="500" valign="top">
            <h1>Indhold</h1>
            Her indsætter du indholdet/teksten.
        </td>
osv.

Du har altså fjernet hans include-menu, og erstattet det med en simpel "åbn-hele-siden-i-et-nyt-vindue" løsning, med de gener det nu engang medfører.

Derfor spørger jeg igen: Hvad er der galt med asp/php/jsp include-filer?
Avatar billede apo Praktikant
21. november 2005 - 17:41 #21
"Ja, men du drejer uden om spørgsmålet. :-)"

Det var ikke meningen. Jeg skrev at bakarden burde indsætte indholdet på en anden måde, end via en include fordi jeg selv mente, at det ikke var en holdbar løsning/mente, at det ikke ville virke.

Men eftersom bakarden åbenbart har fået det til at virke med includes, er løsningen måske helt okay.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester