Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Podstrony na podstronie
Forum PHP.pl > Forum > Przedszkole
paździoch
Witam serdecznie wszystkich! To mój pierwszy post na tym forum i wierzę, że pomożecie mi rozwiązać mój problem.

Zacznę od miejsca, gdzie możecie zobaczyć działający (a raczej nie) przykład tego, o co mi chodzi: www.nonti.com/test
Buduję prostą stronę, która ma menu na górze i podstrony na środku strony są otwierane z użyciem funkcji include. Wszystko pięknie działa jeśli chodzi o górne menu ale problem się pojawia, gdy wejdzie się w galerię (strona startowa oraz pierwszy button w menu). Pod galerią są dwa przyciski do otwierania kolejnych podstron (w formie plików html numerowanych kolejno 1.html, 2.html itd.) i niestety za diaska nie mogę tego uruchomić. Widać, że skrypt wczytuje zawartość pliku 1.html ale po kliknięciu na przycisk dalej już nic się nie dzieje. Pół nocy czytałem to forum i znalazłem jeden podobny temat ale niestety bez rozwiązania. Może tym razem się uda smile.gif

Mój kod:

index.php:

Kod
<body>
<?php include "include/header.php"; ?>
    <?php include "include/menu.php"; ?>

    <?php
        
      $go = $_GET['go'];
      
    
      if(!empty($go)) {
          
          if(is_file("page/$go.html")) include "page/$go.html";
    
          else echo "<br />Page doesn't exist";
      }

      else include "gallery.php";
      
    ?>

<?php include "include/footer.php"; ?>


gallery.php:

Kod
<div id="content">
<?php
      
    $go = $_GET['go'];
      
    
      if(!empty($go)) {
          
          if(is_file("page/$go.html")) include "page/$go.html";
    
      }

      

      $galeria = $_GET['galeria'];
      
    
      if(!empty($galeria)) {
          
          if(is_file("gallery/$galeria.html")) include "gallery/$galeria.html";
    
      }

      else include "gallery/1.html";
      
      
    ?>

<div id="menu2">
<div id="navboxcont">
<div class="navbox1">

<a href="index.php? go=1&galeria=' . ($_GET[ 'galeria' ]-1) . '"></a>
</div>

<div class="navbox2">

<a href="index.php? go=1&galeria='($_GET[ 'galeria' ]+1)'"></a>
</div>


Uprzejmie proszę o łopatologiczne wyjaśnienie problemu (php to dla mnie czarna magia-zajmuję się grafiką)

Dzięki i pozdrawiam
Pawel_W
EDIT:
nie zauważyłem jeszcze jednego, include powinno wyglądać tak:

  1. <?php
  2. include("plik");
  3. ?>


-----------

ten kawałek jest poza kodem php:
<a href="index.php? go=1&galeria=' . ($_GET[ 'galeria' ]-1) . '"></a>

dlatego nie podstawia ci nic za $_GET

musisz zrobić tak:
  1. <a href="index.php? go=1&galeria=
  2. <?php
  3. echo ($_GET[ 'galeria' ]-1);
  4. ?>"></a>
paździoch
Dzięki wielkie za odpowiedź-coś się zmieniło (link wygląda normalniej smile.gif ) ale teraz jeszcze jak mógłbyś mi powiedzieć jak zdefiniować funkcję "plik"

Kod
<?php
include("plik");
?>


I gdzie to kolejne include wsadzić?

Dzięki
Pawel_W
  1. <?php
  2. if(is_file("page/$go.html")) include "page/$go.html";
  3. ?>

zamień na
  1. <?php
  2. if(is_file("page/$go.html")) include ("page/$go.html");
  3. ?>
paździoch
Dzięki wielkie-naprowadziłeś mnie na prawidłowe rozwiązanie biggrin.gif

Pogrzebałem trochę w kodzie i finalny plik galeria.php wygląda tak:

Kod
<div id="content">
<?php
      


      $galeria = $_GET['galeria'];
      
    
      if(!empty($galeria)) {
          
          if(is_file("gallery/$galeria.html")) include "gallery/$galeria.html";
    
      }

      else include "gallery/1.html";
      
      
    ?>

<div id="menu2">
<div id="navboxcont">
<div class="navbox1">

<a href="index.php?galeria=<?php echo ($_GET[ 'galeria' ]-1)?>"></a>

</div>
<div class="navbox2">

<a href="index.php?galeria=<?php echo($_GET[ 'galeria' ]+1)?>"></a>

</div>


Usunąłem po prostu z tego pliku całą fungcję $_GET['$go'], wywaliłem apostrofy z linków i teraz live demo działa smile.gif TUTAJ - można sobie zobaczyć, jak zmieniają się kwadraciki smile.gif

Pozostaje jeszcze tylko kwestia ukrycia przycisków następna/poprzednia jeśli oglądający znajduje się na pierwszej bądź ostatniej stronie galerii.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.