Tudom, hogy buta kérdés, de milyen megoldások vannak erre? Évszázadok óta nem csináltam honlapot.
Sziasztok!
Kb 6 éve foglalkoztam utoljára webszerkesztéssel, akkor is a html-ig jutottam, és kész. Most megkértek, hogy csináljak egy honlapot, húztam a szám, de muszáj. Lényeg, hogy csináltam egy alap kis oldalt, és a menüben található oldalakat iframe-be szúrtam be.
De ez most nem jó, mert nem tudják linkelni a menü különböző oldalait, mert ugye az iframe hívja be, nem pedig a "böngésző". Ha URL szerint akarnám megnyitni, akkor meg ugye az egész oldal "eltűnne" a látogatók szeme elől, mert az csak egy része az oldalnak az iframen belül, anélkül semmi értelme.
Milyen megoldások vannak manapság erre a problémára? Hogy csináltok pl egy menüsort? Mert ugye HTML-ben nem fogom megcsinálni mind a 100 oldalt (táblázatban persze :D), és ha kitalálják hogy kék gomb helyett piros kell, akkor cseréljem le mind a 100-at.... Sajna nem értek annyira hozzá elkezdtem tanulgatni a dolgokat, alapokat, de azt sem tudom hol kezdjem. Dreamweaverem van. És úgy magyarázzatok, hogy lány vagyok :D
Nagyon köszi
"menüben található oldalakat iframe-be szúrtam be"
Itt követted el a hibát, a frameket felejtsd el, ne használd és máris menni fog.
PHP nélkül ez pech, akkor cserélgetheted szépen.
Írd úgy a kódot, hogy igény esetén könnyű legyen a menüt kijelölni és cserélni. (Kommentek, üres sorok a kódban és hasonlók.)
"Dreamweaverem van. És úgy magyarázzatok, hogy lány vagyok :D "
Ez az utolsó két mondat eléggé elszomorított, pedig már akartam írni mit kellene tegyél.
Na de ennek ellenére megpróbálom. Teljesen szakszavak nélkül, hogy megértsd... Egy alap weboldalból fogok részeket beszúrni és magyarázni. És ajánlanám a Dreamweaver helyett a NetBeans-t... ingyenes... és tisztább...
Kezdjük a menüvel. Kb így kell kinézzen:
<div id="leftnav">
<h3>Menü</h3>
<ul>
<li><a href="index.php?menu=1">Kezdőlap</a>
<li><a href="index.php?menu=2">Menu2</a>
<li><a href="index.php?menu=3">Menu3</a>
<li><a href="index.php?menu=4">Menu4</a>
<li><a href="index.php?menu=5">Menu5</a>
</ul>
</div>
Mint látod a linkek ugyanoda mutatnak, az index.php-re. Viszont utána még van ez: ?menu=1 Ez fogja megmondani az index.phpnek hogy milyen tartalmat töltsön be. Na akkor lássuk a tartalom részt, ami kiolvassa ezt az adatot, vagyis a "menu" változót:
<div id="content">
<?php
if (isset($_GET['menu'])) {
switch ($_GET['menu']) {
case 1: include("kezdolap.php");
break;
case 2: include("akarmi2.php");
break;
case 3: include("akarmi3.php");
break;
case 4: include("akarmi4.php");
break;
case 5: include("akarmi5.php");
break;
}
} else {
include("kezdolap.php");
?>
</div>
Végül is az történik, hogy amikor egy menügombra kattintasz, akkor ugyan az az index.php fog betöltődni, de a "?menu=1"-el átadod hogy hányas menüpontot akarod. Mikor az index.php újra lefut, akkor a tartalomnál megvizsgálódik hogy hányas menüt választottál. Ennek függvényében a megfelelő php-t fogja megjeleníteni. Ha linkelni akarsz egy oldalt akkor pl ezt linkeled: "www.teveboldalad.hu/index.php?menu=2" és akkor a tartalom résznél az "akarmi2.php" fog megjelenni. Persze ezek a php filoknak létezniük kell, másképp nem megy...
Ide most bemásolom a teljes index.php-t, hogy lásd kb hogy néz ki egybe. Ezt utólag lehet csinosítani.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>CÍM</title>
</head>
<body>
<div id="container">
<div id="banner">
A WEBOLDAL CÍME
</div>
<div id="leftnav">
<h3>Menü</h3>
<ul>
<li><a href="index.php?menu=1">Kezdőlap</a>
<li><a href="index.php?menu=2">Menu2</a>
<li><a href="index.php?menu=3">Menu3</a>
<li><a href="index.php?menu=4">Menu4</a>
<li><a href="index.php?menu=5">Menu5</a>
</ul>
</div>
<div id="content">
<?php
if (isset($_GET['menu'])) {
switch ($_GET['menu']) {
case 1: include("kezdolap.php");
break;
case 2: include("bevitel.php");
break;
case 3: include("stat.php");
break;
case 4: include("tantargy.php");
break;
case 5: include("nevsor.php");
break;
}
} else {
include("kezdolap.php");
}
?>
</div>
<div id="footer">
© <?php echo date("Y"); ?> Készítő:***
</div>
</div>
</body>
</html>
Ha ezt így nem érted meg, akkor azt mondanám, hogy olvass utána a neten a GET illetve a POST metódusnak (GET method vagy POST method). Ha teljesen idegen neked a php nyelv, akkor azt mondanám, hogy inkább ne kezdj neki. Persze nem ismerlek, lehet tanultál már más valamilyen objektum orientált programozási nyelvet, s így könnyen megértenéd a php nyelvet is. Viszont ha nem tanultál semmi ilyesmit, nincs semmilyen programozói tapasztalatod, akkor szerintem ne is folytasd.
Remélem tudtam segíteni!
Üdv!
Áhhh, most látom a behúzásokat törli az oldal... Hát így elég átláthatatlan lett...
Jha és látom írtak előttem is. Igaza van, php nélkül ez nem fog menni...
Tudom hogy ostobaságnak hangzik és lehet hogy le is pontoztok érte, de az helyett hogy a php világ rejtelmeibe vezetnénk be a "lányt", jobb lenne egy átlátható iránymutatás.
Szvsz. használj valamilyen tartalomkezelőt. Ha a HTML/CSS-t érted személyre tudod szabni a kinézetét. (keresel egy neked tetsző témát és átalakítod). Wordpress nagyon jól alakítható és sokat tud. [link]
Vagy amit még egyszerűbben farigcsálhatsz az az e107. [link]
Ezen kívül még választhatsz Joomla vagy Drupal rendszert is(többek közt). Kinek milyen szájíze van...
"Alap" oldalakat se perc alatt össze tudsz velük dobni és nem kell annyi kódkurkázás hozzá.
Nyilván nem jó megoldás erre az iframe, de nem értem, hogy miért írják azt, hogy ezt biza php nélkül nem lehet.
Lehetséges, hogy én értettem félre a problémádat.
Magyarázat helyett inkább csináltam egy kis demo-t.
Ezt másold be egy index.html fájlba:
<html>
<body>
<ul>
<li><a href="aloldal1.html">sima link</a></li>
<li><a href="aloldal1.html" target="iframe1">link amit az iframe hoz be</a></li>
</ul>
<iframe name="iframe1" />
</body>
</html>
Az alábbit pedig egy aloldal1.html nevű fájlba
<html>
<body>
<h3>Ez az aloldal</h3>
<a href="aloldal1.html">ez a link az iframe-ben marad"</a><br />
<a href="aloldal1.html" target="_parent">ez a link nem az iframe-ben működik"</a><br />
<a href="aloldal1.html" target="_blank">ez a link új tabot nyit"</a><br />
</body>
</html>
Ha megnézed, akkor a linkeknél a target attribútumot kell használni:
http://www.w3schools.com/tags/att_link_target.asp
Remélem erre gondoltál
@18:06: Aha, akkor ez mi a példádban? "<iframe name="iframe1" />"
Frameket NE használj, erről szólt az eddigi összes komment.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!