Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Podstrony na podstronie, demo live
paździoch
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.06.2009

Ostrzeżenie: (0%)
-----


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 (IMG:http://forum.php.pl/style_emoticons/default/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
Go to the top of the page
+Quote Post
Pawel_W
post
Post #2





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

Ostrzeżenie: (0%)
-----


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>


Ten post edytował Pawel_W 17.06.2009, 11:16:32
Go to the top of the page
+Quote Post
paździoch
post
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.06.2009

Ostrzeżenie: (0%)
-----


Dzięki wielkie za odpowiedź-coś się zmieniło (link wygląda normalniej (IMG:http://forum.php.pl/style_emoticons/default/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
Go to the top of the page
+Quote Post
Pawel_W
post
Post #4





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

Ostrzeżenie: (0%)
-----


  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. ?>
Go to the top of the page
+Quote Post
paździoch
post
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.06.2009

Ostrzeżenie: (0%)
-----


Dzięki wielkie-naprowadziłeś mnie na prawidłowe rozwiązanie (IMG:http://forum.php.pl/style_emoticons/default/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 (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) TUTAJ - można sobie zobaczyć, jak zmieniają się kwadraciki (IMG:http://forum.php.pl/style_emoticons/default/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.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 04:06