![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam poniższy kod w footerze, niestety zwraca error ponieważ nie otrzymuje żadnej wartości przez GET, działa dopiero jak umieszczę kod bezpośrednio na stronie. Czy jest jakiś sposób żeby poniższy kod zadziałał w pliku foot.php który jest includowany na stronach?
Ten post edytował AboutMe 10.04.2010, 14:23:01 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Do includowania sluzcy INCLUDE() a nie FILE_GET_CONTENTS().
Dla inlcude podaje sie sciezke do pliku bez danych dodatkowych parametrow jak w url. Napisz co chccesz osiągnąc bo przekombinowujesz wlasnie. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 429 Pomógł: 195 Dołączył: 6.10.2008 Skąd: Kraków/Tomaszów Lubelski Ostrzeżenie: (0%) ![]() ![]() |
Tak jak pisze nospor, może powinieneś jeszcze użyć
-------------------- O! Zimniok :P
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Źle mnie zrozumieliście.
Jeśli user wpisuje adres www.domena.pl/543.html to zostaje wyświetlony art. nr 543 i dodatkowo chciałbym niżej wyświetlić tytuł kolejnego artykułu: Cytat $wynik = ($_GET['id']+1); Niestety to nie działa bo nie otrzymuje liczby 543 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
no bo żeby z czegoś takiego www.domena.pl/543.html wyciągnąć id to potrzebujesz jeszcze regułkę to htaccess, coś takiego:
a tworzenie linku do następnego przez dodawanie 1 to zły pomysł bo co jak usuniesz artykuły i następny będzie miał nie o 1 a o 3 wyższe? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Ale ja doskonale wiem że trzeba zastosować modrewrite
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
to w czym problem? // jeżeli zmienna nie jest przekazywana to regułka musi się nie zgadzać
chyba rozumiem o co Ci chodzi , zmienna jest przekazywana tylko takie coś nie działa tak?
Ten post edytował tehaha 11.04.2010, 11:52:11 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mam stronę www.domena.pl/543.html
ID = 543 Cytat <?php if (is_numeric($_GET['id'])) { $wynik = ($_GET['id']); $art = file_get_contents('content.php?id=' . $wynik); } else { $art = "error"; } ?> <?php echo implode('<br />', array_slice( explode("\n", $art ), 0 ) ); ?> <?php include('foot.php'); ?> W pliku foot.php mam przykładowo: Cytat <?php if (is_numeric($_GET['id'])) { $wynik = ($_GET['id']+1); $art2 = file_get_contents('content.php?id=' . $wynik); } else { $art2 = "error"; } ?> <?php echo implode('<br />', array_slice( explode("\n", $art2 ), 0 ) ); ?> I niestety footer wyświetla error bo nie otrzymuje nic przez GET, ponieważ foot.php jest includowany. Ten post edytował AboutMe 11.04.2010, 12:06:39 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Ale jakie to ma znaczenie, że foot.php jest includowany? Spróbuj wstawić kod:
w pliku foot.php przed warunkiem if(is_numeric($_GET['id'])) {. Poza tym zastanawiam się, dlaczego nie użyjesz zmiennej $wynik zamiast $_GET['id']. Przecież wiesz, że $wynik jest liczbą i możesz zrobić w pliku foot.php coś takiego:
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Wyświetliło mi
Cytat Array ( ) |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Hmm... Problem polega na tym, że funkcja
szuka pliku o nazwie "content.php?id=1". My jednak chcemy, aby plik content.php wygenerował odpowiednią zawartość dla podanego id i dopiero tę zawartość zwrócił przez file_get_contents. Należy to zatem zrobić w taki sposób Wtedy również include zadziała prawidłowo. Pozdrawiam |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Niestety jest to samo.
Jak wkleję ten kod przed <?php include('foot.php'); ?> czyli jak użyję go bezpośrednio na stronie to działa prawidłowo Cytat <?php
$wynik = $wynik + 1; $art2 = file_get_contents('content.php?id=' . $wynik); ?> <?php echo implode('<br />', array_slice( explode("\n", $art2 ), 0 ) ); ?> |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Załóżmy, że masz stronę www.domena.pl, a na niej odnośnik, który prowadzi do adresu www.domena.pl/543.html, czyli do artykułu o id=543 W pliku .htaccess odpowiednie reguły przekazują nazwę pliku 543.html bez rozszerzenia do tablicy $_GET['id']. Pliki index.php, content.php i foot.php znajdują się w tym samym katalogu i jest to główny katalog na Twoim serwerze.
plik index.php plik foot.php
Ten post edytował mortus 11.04.2010, 16:48:32 |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
a tak właściwie to czemu nie możesz w tym pierwszy kodzie(index.php) wygenerować tego przycisku i tylko go wyświetlić w footer?
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 13:36 |