Autor Zpráva
PostMann
Profil
Ahojte, omlouvám se jestli je zde stejné téma, ale našel jsem jenom podobné a ty můj problém neřeší.. Udělal jsem si stránku složenou z divů, i základně nastylovanou a vypozicovanou, vše funguje jak má. Pro vložení divů meniček používám include. Nemůžu přijít na to, jak mám z jednoho divu(např. levého menu) odkázat odkaz, aby se mi zobrazil v divu hlavním obsahovém.. zkoušel jsem každý div zvlášť do souboru, i vše v jednom, i koupírovat zdroják z jiných webů a přepozicovat posvém, ale vždy se mi daná odkazovaný stránka zobrazí v novém okně :/.. prosím o vysvětlení nebo nějáký zdroják který bych si mohl předělat a pochopit to z něj. díky moc :)
Marschmallow
Profil
PostMann:
Moc jsem tě nepochopil - myslíš takhle?
Možná je tam někde chyba, psal jsem to z hlavy. Případně mě opravte ;)

index.php:
<html>
  <head>
      <meta charset="utf-8">
      <title>Moje stránka</title>
      <link rel="stylesheet" type="text/css" href="moje-styly.css">
</head>
<body>
  <div id="logo">
      <?php include "zahlavi-s-logem.php" ?>
  </div>
  <div id="kategorie">
      <?php include "kategorie.php" ?>
  </div>
  <div id="levypanel">
  <?php include "levy-panel.php" ?>
  </div>
  <div id="obsah">
      <h2>První článek</h2>
          <p>Obsah článku...</p>
      <h2>První článek</h2>
          <p>Obsah prvního článku...</p>
      <h2>Druhý článek</h2>
          <p>Obsah druhého článku...</p>
  </div>
  <div id="zapati">
      <?php include "zapati.php" ?>
  </div>
</body>
</html>

zahlavi-s-logem.php:
    <a href="index.php"class="logo"><img src="obrazky/logo.png"></a>


kategorie.php:
    <ul>
        <li><a href="index.php">První stránka</a></li>
        <li><a href="druha.php">Druhá stránka</a></li>
        <li><a href="treti.php">Třetí stránka</a></li>
    </ul>                    

levy-panel.php:
    <h3>Kontaktujte mě!</h3>
      <ul>
           <li><a href="prvnistranka.cz">První odkaz</a>/li>
           <li><a href="druhastranka.cz">Druhá stránka</a></li>
           <li><a href="/data/rss.xml">RSS webu</a></li>

zapati.php:
    <ul>
        <li><a href="index.php">První stránka</a></li>
        <li><a href="druha.php">Druhá stránka</a></li>
        <li><a href="treti.php">Třetí stránka</a></li>
    </ul>                    


Nebo je tu i druhá lehčí možnost - méně divů :)
Rozdíl je jen v tom, že divy nejsou v index.php, ale v jednotlivých includovaných částech stránky:
Možná je tam někde chyba, psal jsem to z hlavy. Případně mě opravte ;)

index.php:
<html>
  <head>
      <meta charset="utf-8">
      <title>Moje stránka</title>
      <link rel="stylesheet" type="text/css" href="moje-styly.css">
</head>
<body>
      <?php include "zahlavi-s-logem.php" ?>
      <?php include "kategorie.php" ?>
  <?php include "levy-panel.php" ?>
  <div id="obsah">
      <h2>První článek</h2>
          <p>Obsah článku...</p>
      <h2>První článek</h2>
          <p>Obsah prvního článku...</p>
      <h2>Druhý článek</h2>
          <p>Obsah druhého článku...</p>
  </div>
      <?php include "zapati.php" ?>
</body>
</html>

zahlavi-s-logem.php:
<div id="logo">
    <a href="index.php"class="logo"><img src="obrazky/logo.png"></a>
</div>


kategorie.php:
<div id="kategorie">
    <ul>
        <li><a href="index.php">První stránka</a></li>
        <li><a href="druha.php">Druhá stránka</a></li>
        <li><a href="treti.php">Třetí stránka</a></li>
    </ul>                    
</div>

levy-panel.php:
<div id="levypanel">
    <h3>Kontaktujte mě!</h3>
      <ul>
           <li><a href="prvnistranka.cz">První odkaz</a>/li>
           <li><a href="druhastranka.cz">Druhá stránka</a></li>
           <li><a href="/data/rss.xml">RSS webu</a></li>
</div>

zapati.php:
<div id="zapati">
    <ul>
        <li><a href="index.php">První stránka</a></li>
        <li><a href="druha.php">Druhá stránka</a></li>
        <li><a href="treti.php">Třetí stránka</a></li>
    </ul>                    
</div>
PostMann
Profil
Moc děkuju za vyčerpávající odpověď, struktura stránky co jste tu napsal je lepší než ta moje, ale stále nevyřešila můj problém. Zkusím uvést na vašem příkladu- když doplním url stránky do jednoho z odkazů v levem-menu, zobrazí se mi v novém tabu. potřeboval bych po kliknutí na odkaz zobrazit stránku, v divu "obsah", na tentýž stránce(tam kde se zobrazují vaše<h2> tagy .. v indexu..myslím si že to lze vyřešit nějákým jednoduchým příkazem. zkoušel sem atributy _top, _parent, atd, ale vždy se zobrazí v novém tabu, nebo v levém-menu místo těch odkazů(v tom samém divu jako je odkaz.. :)
juriad
Profil
PostMann:
Nepoužíváš náhodou rámy, že ne? Jen se ujišťuji.

Každá stránka je jeden soubor, tedy například:
index.php:
<html>
  <head>
      <meta charset="utf-8">
      <title>Moje první stránka</title>
      <link rel="stylesheet" type="text/css" href="moje-styly.css">
</head>
<body>
  <?php include "zahlavi-s-logem.php" ?>
  <?php include "levy-panel.php" ?>
  <div id="obsah">
      Obsah první stránky
  </div>
  <?php include "zapati.php" ?>
</body>
</html>

druha.php:
<html>
  <head>
      <meta charset="utf-8">
      <title>Moje druhá stránka</title>
      <link rel="stylesheet" type="text/css" href="moje-styly.css">
</head>
<body>
  <?php include "zahlavi-s-logem.php" ?>
  <?php include "levy-panel.php" ?>
  <div id="obsah">
      Obsah druhé stránky
  </div>
  <?php include "zapati.php" ?>
</body>
</html>

treti.php:
<html>
  <head>
      <meta charset="utf-8">
      <title>Moje třetí stránka</title>
      <link rel="stylesheet" type="text/css" href="moje-styly.css">
</head>
<body>
  <?php include "zahlavi-s-logem.php" ?>
  <?php include "levy-panel.php" ?>
  <div id="obsah">
      Obsah třetí stránky
  </div>
  <?php include "zapati.php" ?>
</body>
</html>

A do levy-panel.php dáš:
<ul>
    <li><a href="index.php">První stránka</a></li>
    <li><a href="druha.php">Druhá stránka</a></li>
    <li><a href="treti.php">Třetí stránka</a></li>
</ul>

Jak vidíš, každá stránka je úplná, obsahuje všechny části. Odkazy vedou na obyčejné stránky, žádný atribut target nemají (na rozdíl od situace při používání rámů).
Marschmallow
Profil
PostMann:
Nejlepší by byla živá ukázka. Pokud máš web, odkaž na něj. Pokud ne, vlož třeba sem, potom klikni na "Uložit a získat odkaz" a ten nám vlož sem ;) Jde tam vkládat pouze HTML, CSS JS - PHP tam nejde :(
juriad
Profil
Marschmallow:
Myslím, že chápu PostMannův problém. Chtěl použít atribut target, kterým by řekl, že se obsah stránky objeví v nějakém konkrétním divu na stránce. To celkem odpovídá chování chování rámů. Oproti nim je rozdíl v tom, že řešení za pomoci PHP vždy znovu vygeneruje celou stránku a tedy atribut target postrádá smysl a způsobuje jen to nežádoucí otevření stránky v novém okně.

PostMann:
Zapomeň na to, že chceš zůstat na stejné stránce, prostě přejdi na jinou stránku. Ta jiná stránka bude obsahovat všechny části, co ta první; jen abys každou část nemusel psát znovu a znovu na každé stránce, tak si ji vložíš (includneš) pomocí PHP.
Bubák
Profil
PostMann:
Nemůžu přijít na to, jak mám z jednoho divu(např. levého menu) odkázat odkaz, aby se mi zobrazil v divu hlavním obsahovém..
Tohle nejde (pokud pominu hrátky s AJAXem, který se na stavbu webu nehodí).

Pravděpodobně nejlépe napsaný návod bude na http://jecas.cz/include
Další návody jsi dostal zde. Jeden si vyber a postupuj podle něj a pokud bys chtěl něco podle dvou návodů zkombinovat, raději se předem zeptej.

Předpokládám, že to zkoušíš někde, kde je podpora PHP, což může být i ve tvém PC, pokud sis PHP nebo nějaký balík, obsahující PHP, nainstaloval.
PostMann
Profil
No joo, konečně mi to dává smysl :D , mám localserver na php a na něm to zkouším. už asi týden bloudím po netu a bádám po příkazu jakým to jde odkázat. Rámy nemám, ale dá se říct že se z nich snažím přejít a proto mě taky pletl styl odkazování target="." .. zkusím to celé překopat, udělat podle vašich návodů a dám vědět jak se mi to povedlo (nebo nepovedlo) :D dík moc za váš čas, fakt je radost když se někdo snaží jen tak pomoct :) moc dík :)
juriad
Profil
PostMann:
Jen ještě upozorním, že je možné mít naopak jedinou stránku index.php, které pomocí parametru řekneš, co (kterou stránku) má zobrazit.
Výhodou je to, že máš vše na jediném místě a v jednotlivých stránkách se ti nic neopakuje, ale na druhou stranu, tento přístup vyžaduje větší znalosti PHP. Využívá se to v připadech, kdy máš dynamické stránky (třeba stránka produktu v eshopu neexistuje jako soubor, ale je sestavená stejným jedním skriptem jako všechny ostatní stránky produktů).

Pokud tě to zajímá, přečti si tento díl a ty následující. Pro začátek to ale doporučuji udělat raději tím jednoduchým způsobem, kterému rozumíš.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0