Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Modyfikacja skryptu, Potrafi ktoś rozwiązać ten problem ?
boy
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 24.02.2005

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


  1. <?php include &#092;"includes/menu.htm\"; ?><?php 
  2.  
  3. $folPages = 'includes/'; // folder , w ktorym trzymasz te strony 
  4. $page = $_GET['page']; 
  5. if(isset($page)) { 
  6. $roz = array(&#092;"php\"); // itp. 
  7. for($i=0;$i<count($roz);$i++) 
  8. { 
  9. if(file_exists($folPages.$page.'.'.$roz[$i])) { 
  10. include($folPages.$page.'.'.$roz[$i]); 
  11. break; 
  12. } else { 
  13.  if($i == (count($roz) - 1)) { 
  14.  echo 'blad, brak pliku'; 
  15.  } 
  16. } 
  17. } 
  18. } else { 
  19. include($folPages.'index.php'); 
  20. } 
  21.  
  22. ?>

W powyzszy kodzie mam fajny szablonik na ktoryn pracują moje strony.
Problem pojawia sie gdy chce zagnieździc katalog w katalogu.
Wówczas adres index.php?page=nazwa_pliku nie funkcjonuje.
Sądze ze nalezałoby uzyc index.php?page=nazwa_pliku&katalog=nazwa_pliku
Jak zmodyfikowac mój kod, by obslugiwal katalogi podrzędne ?

---
(IMG:http://forum.php.pl/uwaga.gif)
hwao
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Napisze od razu na dwa katalogi, przy czym katalog2 to podrzedny do katalog (tak jest intuicyjnie), a nie jak u ciebie na odwrót:
  1. <?php
  2.  
  3. if (isset($_GET['katalog']))
  4.    $kat=$_GET['katalog'].'/';
  5. else
  6.    $kat='';
  7. if (isset($_GET['katalog2']))
  8.    $kat2=$_GET['katalog2'].'/';
  9. else
  10.    $kat2='';
  11. $file=$folPages.$kat.$kat2.$page.'.'.$roz[$i];
  12. f(file_exists($file)) 
  13.        include($file);
  14.  
  15. ?>


edit: spadam domciu. do jutra (ale tylko do 14). a potem weekend i wolne (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

edit: już jest jutro:)
Tak se myslalem, ze moglbyc zczytywać z url dowolną liczbę zagnieżdżeń katalogów.
Załóżmy, że nazwa katalogu to parametr zaczynający się na kat(a tak żeby było krócej), czyli np. kat1=cos1&kat2=cos2&kat3=cos3;
Wystarczy wówczas z url zczytać wszystkie parametry zaczynajace sie na kat:
  1. <?php
  2.  
  3. $katalogi='';
  4. foreach ($_GET as $name=>$value)
  5.     if (substr($name,0,3)=='kat')
  6.         $katalogi.=$value.'/';
  7.  
  8.  
  9. ?>

A dalej po staremu:
  1. <?php
  2.  
  3.  
  4. if(isset($page)) { 
  5.    $roz = array(&#092;"php\"); // itp. 
  6.    for($i=0;$i<count($roz);$i++) 
  7.    { 
  8.      $file=$folPages.$katalogi.$page.'.'.$roz[$i];
  9.      f(file_exists($file)) 
  10.      {
  11.           include($file);
  12.           break;
  13.       }
  14.    }
  15. }
  16. ?>


hihi, tylko gdy jakiś parametr będzie się nazywał np. katastrofa to też się załapie, bo zaczyna się na kat. Można by ewentualnie sprawdzać czy po kat jest liczba

Ten post edytował nospor 4.03.2005, 08:36:29
Go to the top of the page
+Quote Post

Posty w temacie
- boy   Modyfikacja skryptu   1.03.2005, 11:54:37
- - nospor   [PHP] pobierz, plaintext <? include &#092;...   1.03.2005, 12:03:05
- - boy   Ok. Mozesz mi jeszcze powiedzieć "z czym to s...   1.03.2005, 12:57:13
- - nospor   z dżemem "includes/sport/twoje pliki"   1.03.2005, 12:59:31
- - boy   Do tej pory miałem np index.php?page=strona a ter...   1.03.2005, 13:02:38
- - nospor   no tak jak sam proponowales: index.php?page=stron...   1.03.2005, 13:06:59
- - boy   Dla scisłości : Jest katalog główny includes /czy ...   1.03.2005, 13:29:04
- - nospor   przy tym szablonie jest katalog includes a w nim i...   1.03.2005, 13:37:42
- - boy   KodWarning: main(): Failed opening...   1.03.2005, 15:14:36
- - nospor   ale czemu napisales katalog=katalog. mialo byc kat...   1.03.2005, 15:16:12
- - boy   Wiem ze na poczatku mialobyc katolog sport i jest ...   1.03.2005, 15:56:37
- - nospor   ale zamotales pytanie. za minutke spadam do domu, ...   1.03.2005, 16:05:42
- - nospor   Skąd wykrywał katalogi? Z url czy z dysku?   3.03.2005, 13:09:17
- - boy   Jezeli chciałbym bardziej go rozbudowac do wieksze...   3.03.2005, 13:09:47
- - nospor   Skąd wykrywał katalogi? Z url czy z dysku?   3.03.2005, 13:15:34
- - boy   Zeby wykrywał nowe katalogi na serwerze www .   3.03.2005, 15:10:01
- - nospor   Do latania po dysku sluza funkcje dotyczące system...   3.03.2005, 15:19:43
- - boy   Kilka postów wyzej wymysliłem sposob na to by skry...   3.03.2005, 15:22:35
- - nospor   Dobrze. Aczkolwiek pamiętaj, żeby sprawdzać czy po...   3.03.2005, 15:29:50
- - boy   wiec jak to by wygladalo w naszym przypadku z tym ...   3.03.2005, 15:34:58
- - nospor   Napisze od razu na dwa katalogi, przy czym katalog...   3.03.2005, 15:41:51
- - boy   Na poczte podeslalem Ci maila. Jak mi odpiszesz to...   4.03.2005, 12:11:57
- - nospor   odeslalem   4.03.2005, 12:15:11
- - boy   CytatTak se myslalem, ze moglbyc zczytywać z url d...   17.03.2005, 13:17:40
- - nospor   [PHP] pobierz, plaintext <?php $folPages =...   17.03.2005, 13:24:04
- - boy   Wyskakuje błąd w lini 3. Moze zostawmy to, bo jest...   17.03.2005, 13:33:23
- - nospor   Jakoś nie widzę bledu w lini 3 . MOże u Ciebie to ...   17.03.2005, 13:46:48


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

 



RSS Aktualny czas: 13.10.2025 - 15:07