webForumDet fria alternativet

Måste jag använda Ajax om ja inte vill använda iframe för att öppna länkar i en DIV?

HTML & CSS

4 svar · 448 visningar · startad av xtreme

Medlem sedan juli 20002 056 inlägg
Frågan#1

Har en sida med länkar på vänster sida. När man klickar på dessa villa jag dom ska öppnas mitt på sidan. Detta går lätt att göra med en iframe men eftersom det kan bli problem med olika upplösningar vill jag gärna inte använda det. Ett alternativ är att göra en kopia av sidan och bara ändra infon i mitten men om jag då måste redigera en link måste jag göra det på 50 sidor (eftersom alla sidorna har en kopia av linklistan). Måste jag använda Ajax om ja inte vill använda iframe för att öppna länkarna mitt på sidan eller har någon ett bättre förslag? Har tillgång till PHP om det hjälper.

Bifogar en bild hur sidan ser ut.

links.gif
Medlem sedan juni 20008 205 inlägg
#2

Det enklaste är nog om du använder PHP och gör include. Lägg alla grejer som ska komma före själva innehållet i header.php, och sen allt som kommer efter innehållet i en annan fil, footer.php, och sen skriver du så här:

<?php include "header.php"; ?>
Och sen skriver du det som skja hamna i huvud-divven här.
<?php include "footer.php"; ?>

http://php.net/include

Medlem sedan juli 20002 056 inlägg
#3

spango skrev:

Det enklaste är nog om du använder PHP och gör include. Lägg alla grejer som ska komma före själva innehållet i header.php, och sen allt som kommer efter innehållet i en annan fil, footer.php, och sen skriver du så här:

<?php include "header.php"; ?>
Och sen skriver du det som skja hamna i huvud-divven här.
<?php include "footer.php"; ?>

http://php.net/include

Hänger inte riktigt med ;) Med på hur du menar med include men vad menar du med själva innehållet, det som finns under länkarna och ska presenteras? Ska jag ha bara ha <?php include "header.php"; ?> och <?php include "footer.php"; ?> i indexfilen?

Medlem sedan aug. 20068 090 inlägg
#4

Vänta lite... använder du ens php? Jag tror inte det, eller har jag missat nåt?

Spango har i vart fall "rätt" på sätt och vis: använd includes. Så här funkar det:

"Includes" är att man "drar in" kod från att annat dokument. Detta sker redan i servern och märks inte ens hos användarna. Därav beteckningen "SSI" som betyder "Server Side Include". Man kan använda tekniken vare sig man använder html eller php, men det är lite skillnad i koden.

Du måste först kolla med din webhost 1) om du kan köra SSI över huvudtaget (på seriösa hotell kan du givetvis det) och 2) om du behöver ändra filändelserna från "html" (eller "htm") till "shtml" (eller "shtm"). Ä detta grönt, så börja med att ändra filändelserna på dina dokument och glöm inte ändra eventuella länkar också.

Sen börjar du tillverka en "mall" eller "template", dvs en "grundsida" som alla andra sidor ska utgår ifrån. Den gör du som illustrationen du visade. Gör ett sidhuvud, sidfot, en vertikal meny till vänster och en horisontell meny under sidhuvudet - precis som du vill att det ska bli i de färdiga sidorna med bilder eller vad det nu är du tänkt dig ha.

Åsså gör du en div om du kallar "content" eller vad du vill. Det är där de olika sidornas innehåll ska in så småningom.

När du klarat allt det där börjar det roliga:

Ta all kod som tillhör/utgör sidhuvudet utom den divven den ligger i, klipp ut och klistra in i ett textdokument (inte Word eller nåt, utan NotePad eller liknande). Spara som "sidhuvud.include" och spara till en särskild mapp i sajten som du kan kalla t.ex. "includes".

OBS! I filen ska det INTE vara nån annan kod. Inget <html> eller <head> eller någonting. Bara just det du klippte ut!

Deleta sen samma från din mall och klistra in denna tagg istället i divven där sidhuvudkoden var:

<!--#include file="/includes/sidhuvud.include" -->

(Det kan eventuellt visa sig att du behöver skriva "#include virtual" istället för "#include file")

Gör samma sak med de andra enheterna: sidfoten, och de båda menyerna.

Om du fått till allt rätt och begript min virriga förklaring, så ska du nu kunna kopiera din "mall" och göra riktiga sidor av kopiorna genom att bara lägga in innehållet i divven "content".

Justering av menyerna gör du i "include"-filerna.

Lycka till...

Medlem sedan juni 20008 205 inlägg
#5

Learning by doing.

header.php

<html>
<head>
    <title>xtreme to the max!!!</title>
</head>
<body>
<h1 style="text-decoration: blink; left: 0px; top: 0px">xtremes koola hemsida</h1>
<ul style="position: absolute; left: 0px; top: 200px; width: 200px;">
<li><a href="slask.php">Slask</a></li>
<li><a href="tratt.php">Tratt</a></li>
</ul>
<div style="border: 1px solid black; position: absolute; left: 250px; top: 200px;">

footer.php

</div>
</body>
</html>

slask.php

<?php include "header.php"; ?>
Min slask luktar illa; jag tror det finns någon slags rens i den som jag glömt städa bort.
<?php include "footer.php"; ?>

tratt.php

<?php include "header.php"; ?>
Trattar är bra att ha, då kan man hälla vätskor mellan behållare utan att spilla!
<?php include "footer.php"; ?>

Går du sen in på slask.php via en PHP-kunnig webbserver, kommer du få ungefär det här till webbläsaren:

<html>
<head>
    <title>xtreme to the max!!!</title>
</head>
<body>
<h1 style="text-decoration: blink; left: 0px; top: 0px">xtremes koola hemsida</h1>
<ul style="position: absolute; left: 0px; top: 200px; width: 200px;">
<li><a href="slask.php">Slask</a></li>
<li><a href="tratt.php">Tratt</a></li>
</ul>
<div style="border: 1px solid black; position: absolute; left: 250px; top: 200px;">
Min slask luktar illa; jag tror det finns någon slags rens i den som jag glömt städa bort.
</div>
</body>
</html>

Comprendez?

red. Danne beat me to it...

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