Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jak zrobić taki link?
Forum PHP.pl > Forum > Przedszkole
GoldeNx3
Witam. Widziałem na większości stronach widzę takie linki np. www.strona.pl/index.php?id=vip lub www.strona.pl/index.php?id=slot jak takie coś zrobić? Bo na razie to mam: www.strona.pl/vip.php lub www.strona.pl/slot.php
gorden
poczytaj o tablicy $_GET
olechafm
oraz o tym jak budować strony w oparciu o include/require oraz instrukcję switch
ciekawskiii
jaja se robicie, w ciagu kilku dni bylo conajmniej kilka takich tematow a wam nawet ciezko na dwie podstrony forum spojrzec juz nie wspomne o wyszukiwarce
GoldeNx3
Ale $_GET działa wtedy, gdy mamy do wciśnięcia button. A co, gdy wybieramy z menu na stronie głównej np. VIP i z index.php przenosi na index.php?id=vip a nie na vip.php?
Turson
  1. if(empty($_REQUEST['id'])) {
  2. $_REQUEST['id'] = "news";
  3. $id = "news";
  4. }
  5. switch($_REQUEST['id']) {
  6. case "news":
  7. include("news.php");
  8. break;
  9. case "ksiega";
  10. include("ksiega.php");
  11. break;

w tym przypadku index.php?id=ksiega
Fifi209
Cytat(GoldeNx3 @ 3.04.2011, 22:00:58 ) *
Ale $_GET działa wtedy, gdy mamy do wciśnięcia button.

Fajna teza, mógłbyś poprzeć argumentami? smile.gif
GoldeNx3
Cytat(fifi209 @ 3.04.2011, 22:14:16 ) *
Fajna teza, mógłbyś poprzeć argumentami? smile.gif


Znaczy ja nie wiem, ja raczkuje. ; dd

Kod
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 2048 bytes) in /home/xxx/public_html/sklep/head.php on line 42


Taki błąd wyskoczył.

head.php:

http://wklejto.pl/94441
webfreak
Stwórz plik index.php i wklej do niego


  1.  
  2. <?php
  3. // sprawdza zmienna $_GET['page']
  4. $page = ((isset($_GET['page']) && $_GET['page'] != '') ? $_GET['page'] : 'home');
  5. // zapobiega przegladaniu np <a href="http://strona/pages/dupa.php" target="_blank">http://strona/pages/dupa.php</a>
  6. $page=(preg_match('/(\.\.|\/)/i',$page)?'home':$page);
  7. // zapobiega niedowzwolonym znaka
  8. $page = preg_replace('/[^a-zA-Z0-9 \._-]/','',$page);
  9. // sprawdza czy plik istnieje
  10. $page = (file_exists('pages/'.$page.'.php') ? $page : 'error');
  11. // i nasz include
  12. include('pages/'.$page.'.php');
  13. ?>
  14.  


stworz teraz .htaccess i wklej

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^([A-Za-z0-9_]+)/?$ index.php?page=$1 [L]


uploaduj 2 pliki na roota


Stwórz folder /pages do którego wzuc home.php ktory dziala jako index.php teraz jesli wzucisz do /pages plik contact.php link produkujesz http://twojastrona.pl/contact.. jelsi nei zrozumiale to podesle pliki tongue.gif
GoldeNx3
@Up

Nie ogarniam tego. biggrin.gif

Ale to nie będzie mie tworzyć linków np. index.php?id=vip ?
webfreak
jesli nie uploadujesz .htaccess linki produkujesz


  1. <a href="?id=kociolek"</a>



Uploadujac .htaccess link wyglada ladniej i produkujesz go

  1. <a href="/kociolek"</a>
tzw . Pretty Urls.
GoldeNx3
Dobra, zrobiłem Twoim sposobem. ; DD

A czyli to obojętne, czy będzie id=strona czy tym u góry? W sumie racja, Twój ładniej wygląda i lepiej się dodaje.

Tak apropo nie:

Kod
<a href="/kociolek"</a>


tylko:

Kod
<a href="kociolek"</a>
haha.gif z / nie przenosi..

Jeszcze jedno małe pytanie. Jak robię np. formularz kontaktowy, to gdy już wciskam button "wyślij" to lepiej przekierować dane do innego pliku, któy się tym zajmie, czy wszystko zrobić w jednym?
webfreak
W sumie to ja nie wiem jaka różnica. Dla mie łatwiej mieć natej samej stronie ponieważ łatwiej mi robić $error/y. Jesli będziesz miał jakikolwiek problem z tym moim skryptem to wal śmiało
GoldeNx3
Mam problem z tym Twoim sposobem linkowania. ; dd


Gdy np. w menu zrobię taki odnośnik:

http://www.strona.pl/sklep/

To po prostu mnie wylogowuje (Wyłączam i włączam przeglądarkę i znów zalogowany). Dla testu zrobiłem sobie plik, który sprawdza ID, nick itd i tam we wszystkich polach mam puste, a gdy przekieruje:

href=home to jest wszystko dobrze, zapamiętuje sesje etc.

Jest jakiś sposób, by nie wylogowywało? Problem mam tylko, gdy podaję pełny link, a jest to niezbędne, gdyż zrobiłem sobie folder admin, w którym są funkcje przypisane tylko adminowi.


@Edit:

Dzieje się tak, gdy podam stronę która na początku będzie miała www.
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.