Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CMS] Problem z podstronami
lukaszskate
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 14.03.2009

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


Witam,

pisze swój cms (maly, dostosowany do moich potrzeb). Chce w nim zastosować opcje podstron podobną do webspella. Ma on szablon w pliku index.php i w miejscu gdzie ma wyświetlać się zawartość podstrony np. artykuly, newsy itd. wstawiony jest taki skrypt:
Kod
                      <? if(!isset($site)) $site="news";
                      $invalide = array('/','/\/',':','.');
                      $site = str_replace($invalide,' ',$site);
                      if(!file_exists($site.".php")) $site = "news";
                      include($site.".php");?>


Moze mi ktos pomóc w stworzeniu czegoś podobnego dla siebie? Nie jestem jeszcze zaawansowany, narazie moja wiedza jest mała. Licze na pomoc i pozdrawiam!
Go to the top of the page
+Quote Post
Foxx
post
Post #2





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

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


Ale dlaczego nie możesz po prostu tego zastosować?
Skąd pochodzi zmienna $site ?
Go to the top of the page
+Quote Post
lukaszskate
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 14.03.2009

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


Zastosowac mogę, ale jaki sens jest stosowac cos czego sie w 100% nie rozumie. Chce zdawac też egzamin z php i fajnie by bylo takie rozwiązania znac. ; )
Go to the top of the page
+Quote Post
Spawnm
post
Post #4





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




jaki egzamin z php blinksmiley.gif
  1. <?php
  2. $invalide = array('/','//',':','.');
  3. $site = str_replace($invalide,' ',$site);
  4. ?>

to ci raczej nie zadziała , tablice musisz puścić w pętli .
Go to the top of the page
+Quote Post
blooregard
post
Post #5


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
jaki egzamin z php

Może ZCE ? smile.gif


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
Foxx
post
Post #6





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

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


  1. <?php
  2. # jeżeli nie jest ustawiona wartość zmiennej $site, ustaw ją na "news":
  3. if(!isset($site)) $site="news";
  4. # utworzenie tablicy $invalide z 4 wartościami:
  5. $invalide = array('/','//',':','.');
  6. # zamiana znaków w ciągu $site:
  7. $site = str_replace($invalide,' ',$site);
  8. # jeżeli nie istnieje plik o nazwie $site.php ustaw zmienną $site na "news":
  9. if(!file_exists($site.".php")) $site = "news";
  10. # dołącz zawartość pliku $site.php
  11. include($site.".php");
  12. ?>

<? - niezalecane przejście do PHP, zalecane wygląda tak: <?php
Manual: str_replace" title="Zobacz w manualu PHP" target="_manual, file_exists" title="Zobacz w manualu PHP" target="_manual, include" title="Zobacz w manualu PHP" target="_manual.
Takie rzeczy powinieneś umieć robić sam.

Spawnm:
Cytat
If search and replace are arrays, then str_replace() takes a value from each array and uses them to do search and replace on subject . If replace has fewer values than search , then an empty string is used for the rest of replacement values. If search is an array and replace is a string, then this replacement string is used for every value of search .
Go to the top of the page
+Quote Post
lukaszskate
post
Post #7





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 14.03.2009

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


Kod
$site = $_GET['site'];
if($closed AND !isanyadmin($userID)) {
    $dl=mysql_fetch_array(safe_query("SELECT * FROM `".PREFIX."lock` LIMIT 0,1"));
     $reason = $dl[reason];
     $time = $dl[time];
  showlock($reason, $time);
}
- to jest zmienna $site w pliku _functions który jest includowany w index.php

Dzięki mistrzu, juz doszłem do tego hehe ; ) wszystko elegancko działa ; ) nice!!
Go to the top of the page
+Quote Post
Foxx
post
Post #8





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

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


To zainteresuj się jeszcze tymi tematami:
Temat: Bezpieczenstwo_skryptow_PHP
Temat: SQL_Injection_Insertion
Bo teraz można ci zaincludować dowolną stronę w skrypcie (skoro nie filtrujesz w żaden sposób $_GET).
Go to the top of the page
+Quote Post
lukaszskate
post
Post #9





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 14.03.2009

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


Bym zapomnial ; ) Oczywiscie klik "pomógł" biggrin.gif:d
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: 19.08.2025 - 16:27