[ Príspevkov: 4 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 08.07.09
Prihlásený: 07.07.16
Príspevky: 37
Témy: 9 | 9
NapísalOffline : 30.01.2012 12:25 | Include dynamický

Zdravím, snažím sa vytvoriť stránku podľa toho čo som si zaumienil, ale narazil som na problém, ako zabezpečiť načítavanie stránok po kliknutí na odkaz a pritom uchovať rovnakú funkčnosť stránky.
V základe funguje stránka takto: index.php zobrazí toto

Include dynamický

Ak kliknem na tlačidlá na boku, tak sa mi plynule vysunie tablet

Include dynamický
Include dynamický

pričom mám tri rôzne talbety, pretože dva tablety ešte obsahujú osobitne tlačidlá pre ďalšie podkategórie. Mám to urobené tak, že tablet môžem spodným tlačidlom vypnutia zavrieť/zasunúť, ak kliknem na odkaz kde je tablet iný (s tlačidlami alebo bez), tak sa najprv aktuálny schová a v zápätí sa ukáže nový, ak kliknem na tlačidlo, kde je tablet rovnaký ako aktuálny, tak sa s aktuálnym neudeje nič (zmeniť by sa mal iba obsah v bielom priestore).
A čo chcem dosiahnuť? Text, obrázky... čiže obsah stránky sa má zobrazovať v bielom priestore tabletu po kliknutí na jednotlivé tlačidlá (v kóde oblasť <div id="pozadie"> pre konkrétny tablet). Ako to urobiť tak, aby mi index.php ostal načítaný bezozmeny, čiže aby sa všetko dialo tak ako má a pritom aby sa do bieleho priestoru načítal obsah požadovanej stránky? Našiel som nejaký návod na include, niečo takéto:

Kód:
<?php
   $page = $_GET['page'];
   $pages = array('page1', 'page2', 'page3');
   if (!empty($page)) {
      if(in_array($page,$pages)) {
         $page .= '.php';
         include($page);
      }
      else {
      echo 'Page not found. Return to
      <a href="index.php">index</a>';
      }
   }
   else {
      include('page1.php');
   }
?>

ale ak som to dobre pochopil, vždy to nanovo načíta aj samotný index.php, takže tablet zmizne.
No akosi sa mi nepodarilo to rozbehať ani s jednoduchou stránkou a neviem čo má obsahovať napr. page1.php. Iba kód typu <p>nieco</p> alebo aj <head> a <body>?


Tu je kód mojej stránky:
Kód:
<html>
<head>
<title>Naše profily</title>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1250">
<link rel="Shortcut Icon" href="/favicon.ico" type="image/x-icon">
<link rel="icon" href="/favicon.ico" type="image/x-icon">
<link rel="stylesheet" type="text/css" href="styles.css" />
<script src="jquery-1.7.1.min.js" type="text/javascript" ></script>
<script src="jquery-ui.min.js" type="text/javascript" ></script>

</head>
<body>

<div id="zaklad">


<div id="tlacidlo">
<a href="#" class="fotky"></a>
<a href="#" class="video"></a>
<a href="#" class="diskusia"></a>
<a href="#" class="onas"></a>
<a href="#" class="zbrane"></a>
<a href="#" class="akcie"></a>
</div>

<div class="tabletc">
<div class="vypinac"></div>
<div id="pozadie">      

</div>
</div>

<div class="tabletb">
<div class="vypinac"></div>
<div id="tabtlac"><a href="#" class="tabburk"></a><a href="#" class="tabhil"></a><a href="#" class="tablest"></a></div>
<div id="pozadie">      

</div>      
</div>

<div class="tablet">
<div class="vypinac"></div>
<div id="tabtlac"><a href="#" class="tabroz"></a><a href="#" class="tabburk"></a><a href="#" class="tabhil"></a><a href="#" class="tablest"></a></div>
<div id="pozadie">      

</div>
</div>
</div>

<script>
var x
var y
var z

$(document).ready(function() {
$('.video,.diskusia,.onas,.zbrane').click(function () {
     if (x) $('.tabletb').hide("slide", { direction: "up" }, 1000);
     if (y) $('.tablet').hide("slide", { direction: "up" }, 1000),
     x = true;
         
     if (x) $('.tabletc').delay(1000).show("slide", { direction: "up" }, 1000),
     x = false, y = false, z = true;
     if (z);
  else
  $('.tabletc').show("slide", { direction: "up" }, 1000),
  z = true;
   });
  });

$(document).ready(function() {
$('.fotky').click(function () {
     if (x) $('.tabletb').hide("slide", { direction: "up" }, 1000);
     if (z) $('.tabletc').hide("slide", { direction: "up" }, 1000),
     x = true;
         
     if (x) $('.tablet').delay(1000).show("slide", { direction: "up" }, 1000),
     x = false, z = false, y = true;
     if (y);
  else
  $('.tablet').show("slide", { direction: "up" }, 1000),
  y = true;
   });
  });
 
$(document).ready(function() { 
$('.akcie').click(function () {
     if (y) $('.tablet').hide("slide", { direction: "up" }, 1000);
     if (z) $('.tabletc').hide("slide", { direction: "up" }, 1000),
     y = true;
     
     if (y) $('.tabletb').delay(1000).show("slide", { direction: "up" }, 1000),
     y = false, z = false, x = true;
     if (x);
   else
   $('.tabletb').show("slide", { direction: "up" }, 1000),
   x = true;
    });
   });
   
$(document).ready(function() {
$('.vypinac').click(function () {
     if (y) $('.tablet').hide("slide", { direction: "up" }, 1000),
     y = false;
     if (x) $('.tabletb').hide("slide", { direction: "up" }, 1000),
     x = false;
     if (z) $('.tabletc').hide("slide", { direction: "up" }, 1000),
     z = false;
   });
  });

   $(document).ready(function() {
      $('.fotky,.video,.diskusia,.onas,.zbrane,.akcie,.tabroz,.tabburk,.tabhil,.tablest').append('<span class="hover"></span>').each(function () {
           var $span = $('> span.hover', this).css('opacity', 0);
           $(this).hover(function () {
             $span.stop().fadeTo(1000, 1);
          }, function () {
         $span.stop().fadeTo(1000, 0);
            });
      });
   });

</script>
</body>
</html>


Offline

Čestný člen
Čestný člen
Include dynamický

Registrovaný: 21.02.06
Prihlásený: 08.12.14
Príspevky: 5447
Témy: 29 | 29
Bydlisko: Bratislava
NapísalOffline : 30.01.2012 18:38 | Include dynamický

tl;dr
Ak máš problém, skús ho spísať pár vetami + daj odkaz na ukážku. Nikto sa nebude prehrabávať x riadkami kódu (ktorý si nemôže ani vyskúšať).
K tomu, čo som pochopil z tvojho chaotického popisu ti môžem poradiť len jednu vec - ajax. Naštuduj si, čo to je a ako sa to používa.


_________________
Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 08.07.09
Prihlásený: 07.07.16
Príspevky: 37
Témy: 9 | 9
Napísal autor témyOffline : 30.01.2012 23:21 | Include dynamický

Najjednoduchšie ako to viem povedať je že:

Potrebujem v stránke index.php vložiť v kóde

Kód:
<div class="tablet">
<div class="vypinac"></div>
<div id="tabtlac"><a href="#" class="tabroz"></a><a href="#" class="tabburk"></a><a href="#" class="tabhil"></a><a href="#" class="tablest"></a></div>
<div id="pozadie">     

</div>
</div>
</div>


do oblasti <div id="pozadie"> text, obrázky a podobne bez toho, aby sa index.php načítavalo nanovo.

Ajax si pozriem keď bude čas ale z toho čo som zatiaľ pozrel hovorí táto veta zrejme presne o tom čo budem potrebovať: "AJAX is about updating parts of a web page, without reloading the whole page".

// pridané po 3 hodinách 58 minútach od posledného príspevku

Tak som naštudoval ajax ale potom som našiel dokonca funkciu .load pre jquery. http://api.jquery.com/load/ A s touto je to ešte jednoduchšie a po pár testoch to vyzerá tak, že to funguje presne tak ako som potreboval. Každopádne díky shaggy, veci sa pohli po tvojej rade.


Offline

Čestný člen
Čestný člen
Include dynamický

Registrovaný: 21.02.06
Prihlásený: 08.12.14
Príspevky: 5447
Témy: 29 | 29
Bydlisko: Bratislava
NapísalOffline : 31.01.2012 1:23 | Include dynamický

.load v jquery je ajax ;)


_________________
Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme.
 [ Príspevkov: 4 ] 


Include dynamický



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Dynamicky mikrofon

v Ostatné

0

200

17.08.2011 16:09

ultimateman

V tomto fóre nie sú ďalšie neprečítané témy.

dynamický obsah

v JavaScript, VBScript, Ajax

2

374

01.06.2009 9:50

pilná lama glama

V tomto fóre nie sú ďalšie neprečítané témy.

Dynamický disk

v Pevné disky a radiče

4

1345

26.03.2010 9:29

jan037

V tomto fóre nie sú ďalšie neprečítané témy.

dynamicky disk - vista

v Pevné disky a radiče

9

933

23.04.2009 19:59

AsuSmaNiaK

V tomto fóre nie sú ďalšie neprečítané témy.

PHP dynamický title

v PHP, ASP

10

325

25.11.2012 19:00

shaggy

V tomto fóre nie sú ďalšie neprečítané témy.

mysql - dynamický počet fieldov

v Databázy

3

407

07.11.2009 18:46

rooobertek

V tomto fóre nie sú ďalšie neprečítané témy.

JAVA: dynamicky pridavane checkboxy

v Assembler, C, C++, Pascal, Java

4

241

27.04.2011 14:47

bimbo34

V tomto fóre nie sú ďalšie neprečítané témy.

Dynamicky disk - Windows 7

v Operačné systémy Microsoft

6

174

25.05.2015 15:24

hanesovic

V tomto fóre nie sú ďalšie neprečítané témy.

LCD TV dynamicky kontrast

v Monitory, televízory a projektory

0

548

19.11.2010 16:07

kllr007

V tomto fóre nie sú ďalšie neprečítané témy.

Dynamický disk (chcem konvertovať)

v Pevné disky a radiče

6

2324

09.08.2010 14:30

DildoGripak

V tomto fóre nie sú ďalšie neprečítané témy.

Dynamicky vs. Typicky kontrast

v Monitory, televízory a projektory

8

211

23.02.2014 15:00

muranec3

V tomto fóre nie sú ďalšie neprečítané témy.

Dynamicky Link na obrazok

v HTML, XHTML, XML, CSS

1

225

23.01.2011 21:32

emer

V tomto fóre nie sú ďalšie neprečítané témy.

Základný a dynamický disk

v Operačné systémy Microsoft

2

203

18.04.2015 15:22

Alastor

V tomto fóre nie sú ďalšie neprečítané témy.

Schéma: Predzosilovač pre dynamický mikrofón

v Elektronika

0

3914

23.01.2007 4:58

Elektronic

V tomto fóre nie sú ďalšie neprečítané témy.

Dynamicky alokovane 2D pole C

v Assembler, C, C++, Pascal, Java

2

146

11.11.2013 13:32

Marcello123

V tomto fóre nie sú ďalšie neprečítané témy.

[VYRIESENE] priradenie premennej do pola (dynamicky)

v PHP, ASP

5

256

11.03.2009 17:04

stenley



© 2005 - 2017 PCforum, edited by JanoF