Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z menu.
dundey
post
Post #1





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Mam taki oto problem:
Pisze sobie stronkę w php. Linki w menu mają następującą postać:

http://localhost/Projekt/index.php?page=felietony

W pliku index.php mam taki oto fragment kodu php:

[php:1:d8cd2972ec]<? if(!isset($page)) {
$page="index";
}
if(file_exists("strony/$page.inc")) {
include "strony/$page.inc";
} else {
echo "Strona niedostępna!";
} ?>[/php:1:d8cd2972ec]

Wszystkie podstrony (np. felietony.inc) mam umieszczone w katalogu strony.
I problem polega na tym, że za gdy będąc off-line, czli korzystając z
jakiegoś serwera (korzystawłem w Apache z php, teraz zainstalowałem FoxServ)
po kliknięciu na link ni pokazuje się treść owego pliku o rozszerzeniu *.inc,
tylko za każdym razem ostrzeżenie "Strona niedostępna!", a adres w polu, w
którym wpisuje się adresu pojawia się taki, jaki ma być, czyli:


http://localhost/Projekt/index.php?page=felietony

Więc dlaczego to nie działa!!!
Pomóżcie proszę!!!
Tylko nie piszcie "zainstaluj krasnala" !!!
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 33)
spenalzo
post
Post #2





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


Cytat
I problem polega na tym, że za gdy będąc off-line, czli korzystając z jakiegoś serwera

1. To off-line czy nie?!
2. Na pewno istnieje taki plik? Sprawdź rozszerzenia.
3. Spróbuj przeczytać TO i zrobić tak:

[php:1:cd30937569]<?php
if(!empty($HTTP_GET_VARS["page"]))
{
$HTTP_GET_VARS["page"]="index";
}
if(file_exists("strony/".$HTTP_GET_VARS["page"].".inc"))
{
include "strony/".$HTTP_GET_VARS["page"].".inc";
}
else
{
echo "Strona niedostępna!";
}
?>
[/php:1:cd30937569]
Poza tym lepiej stosuj rozszerzenie .inc.php, ponieważ nie wszystkie serwery obsługują rozszerzenie .inc - wtedy wszystko widać na dłoni: hasła, loginy itd.


--------------------

Go to the top of the page
+Quote Post
dundey
post
Post #3





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Już jest lepiej, bo działa jak klikam na linki aaevil.gif

Tylko, że gdy jest taki adres:

http://localhost/Projekt/index.php

Pokazuje się takie coś

Warning: Undefined index: page in d:phpfoxservwwwprojektindex.php on line 49
Strona niedostępna!


Co teraz??
Go to the top of the page
+Quote Post
spenalzo
post
Post #4





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


Zrób tak:
[php:1:69449eff2a]<?php
$page=$HTTP_GET_VARS["page"];
if(!empty($page))
{
$page="index";
}
if(file_exists("strony/".$page.".inc"))
{
include "strony/".$page.".inc";
}
else
{
echo "Strona niedostępna!";
}
?>
[/php:1:69449eff2a]
i powinno być OK.


--------------------

Go to the top of the page
+Quote Post
dundey
post
Post #5





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Teraz wszedzie pisze strona niedostepna, a w indexie nadal to samo
!!
Go to the top of the page
+Quote Post
spenalzo
post
Post #6





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


To zapodaj linię nr 49.


--------------------

Go to the top of the page
+Quote Post
dundey
post
Post #7





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


$page="index";
Go to the top of the page
+Quote Post
spenalzo
post
Post #8





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


usuń z linii nr 3 (na tej stronie) wykrzyknik (!).


--------------------

Go to the top of the page
+Quote Post
dundey
post
Post #9





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


wszytsko dziala
tylko znowu to na indexie

Warning: Undefined index: page in d:phpfoxservwwwprojektindex.php on line 46
TO JEST INDEX.php
Go to the top of the page
+Quote Post
FiDO
post
Post #10





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Czy $_GET['page'] tez zwraca ten blad?

Wydaje mi sie, ze masz wlaczone pokazywanie nawet bledow typu E_NOTICE w php.ini, bo one wlasnie takie rzeczy pokazuja...

jesli nie chcesz tego zmieniac to sprobuj tak:
[php:1:19016fe374]<?php
$page = (isset($_GET['page']))?$_GET['page']:"index";
if(file_exists("strony/".$page.".inc"))
{
include "strony/".$page.".inc";
}
else
{
echo "Strona niedostępna!";
}
?>[/php:1:19016fe374]
Go to the top of the page
+Quote Post
dundey
post
Post #11





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Wszystko działa, tylko, że w pliku index.php nadal sie pokazuje taki oto błąd:

Warning: Undefined index: page in d:phpfoxservwwwprojektindex.php on line 46

linia 46 to: $page=$HTTP_GET_VARS["page"];

Jeśli ktoś będzie umiał, bardzo proszę o pomoc!



Następnie jest taka oto sprawa:
Wszystkie strony mam umieszczone w katalogu "strony".
i w plików "liga" o rozszerzeniu *.inc chce zrobić
linki do innych stron (o tym samym rozszerzeniu) w katalogu
"strony/historia". I nie wiem jak ma wyglądać kod, który
powinienem wkleić do pliku "liga.inc", oraz jak powinna wyglądać
składnia linku. Podejrzewam, że coś chyba takiego:
<a href=index.php?page=liga&historia=1>plik 1</a>

Bardzo proszę o pomoc.
Go to the top of the page
+Quote Post
spenalzo
post
Post #12





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


start -> uruchom
i wpisz "notepad c:windowsphp.ini"
potem odszukaj linijkę
error_reporting = E_ALL
i zamień na
error_reporting = E_ALL & ~E_NOTICE
amen


--------------------

Go to the top of the page
+Quote Post
dundey
post
Post #13





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Tak własnie mam ustawione... więc questionmark.gif
Go to the top of the page
+Quote Post
spenalzo
post
Post #14





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


Ale tą pierwszą czy drugą linijkę?
Jak masz tą drugą to takie ostrzeżenia nie powinny się pojawiać.


--------------------

Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #15





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

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


Jemu pojawia się ostrzeżenie (warning), a nie notice...
Oznacza, że nie zdefiniowano $HTTP_GET_VARS['page']...


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
dundey
post
Post #16





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


wiec jak to zdefiniowac questionmark.gif
Go to the top of the page
+Quote Post
spenalzo
post
Post #17





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


Ja na próbę dałem sobie E_ALL i pojawiały się takie same błędy. PRzywróciłem tą drugą linijkę i zniknęły...


--------------------

Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #18





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

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


Cytat
wiec jak to zdefiniowac questionmark.gif

Zainteresuj się funkcją [manual:09b3ca6652]isset[/manual:09b3ca6652]... Na takie błędy jest niezawodna...


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
dundey
post
Post #19





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


nie rozumiem......
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #20





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

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


Jeśli przesyłasz jakąś zmienną w URL'u i robisz takie przypisanie musisz pilnować czy zawsze istnieje zmienna $HTTP_GET_VARS['page']. Jeśli na jakiejkolwiek stronie nie używasz jej to pojawia się tego typu warning oznaczający że po prostu nie została ona zdefiniowana...
Można się przd tym zabezpieczyć funkcją [manual:2e38306736]isset[/manual:2e38306736].
Np.
[php:1:2e38306736]<?php
$page = isset($HTTP_GET_VARS['page']) ? $HTTP_GET_VARS['page'] : 1;
?>[/php:1:2e38306736]
Powyższe oznacza: jeśli istnieje zmienna page w URL'u przypisz jej wartość do zmiennej $page, jeśli nie przypisz np. 1...


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
dundey
post
Post #21





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


w pliku liga.inc dodaj linijkę
include("historia/".$HTTP_GET_VARS["historia"]."inc");
i linki przekazujesz tak
<a href=index.php?page=liga&historia=1>plik 1</a>


Sorry, sorry - nie kapuje!!
Go to the top of the page
+Quote Post
FiDO
post
Post #22





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Cytat
w pliku liga.inc dodaj linijkę
include("historia/".$HTTP_GET_VARS["historia"]."inc");
i linki przekazujesz tak
<a href=index.php?page=liga&historia=1>plik 1</a>


Sorry, sorry - nie kapuje!!

questionmark.gif do siebie piszesz??

Sprawdzales rozwiazanie, ktore podalem Ci na 1 stronie (tu)
bo odnosze wrazenie, ze go nawet nie przeczytales, bo dalej piszesz o swojej wersji skryptu.
Go to the top of the page
+Quote Post
spenalzo
post
Post #23





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


Masz plik liga.inc i wstawiasz do niego linijkę która Ci podałem. Tu nie ma więcej co wyjaśniać!!!

Update: FiDO - rozwiązanie podałem mu na GG stąd taka forma :-)


--------------------

Go to the top of the page
+Quote Post
dundey
post
Post #24





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Czyli mam teraz taki kod tak?

[php:1:886e4f989a]
<?php
$page=$HTTP_GET_VARS["page"];
if(empty($page))
{
$page="index";
}
if(file_exists("historia/".$page.".inc"))
{
include("historia/".$HTTP_GET_VARS["historia"]."inc");
}
else
{
echo "Strona niedostępna!";
}
?>
[/php:1:886e4f989a]


A link taki:

<a href=index.php?page=liga&historia=1>plik 1</a>

To nie wchodzi!!!

Zaraz po otworzeniu pliku liga.inc jest napis: "Strona niedostepna!"

Więc...

P.S. Metoda KaMeLeOn'a nie pokazuje błędu, ale i też nie otwiera podstron!

?>[/php]
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #25





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

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


Hmm...
Zastanawiam się tylko jak ponazywałeś pliki i gdzie są
umieszczone, bo taka informacja byłaby istotna...
1.
[php:1:b56f84b49b]<?php
$page = ( isset($HTTP_GET_VARS['page']) && !empty($HTTP_GET_VARS['page']) ) ? $HTTP_GET_VARS['page'] : 'index';
?>[/php:1:b56f84b49b]
2. Domyślam się, że domyślna strona "index" jest w katalogu głównym...
[php:1:b56f84b49b]<?php
if( file_exists($page . ".inc") )
{
include($page . "inc");
}
else
if( file_exists("historia/".$page.".inc") )
{
include("historia/".$HTTP_GET_VARS["historia"]."inc");
}
else
{
echo "Strona niedostępna!";
}
?>[/php:1:b56f84b49b]


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
dundey
post
Post #26





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


index.php -> główny katalog
index.inc -> katalog strony

W pliku liga.inc chce dodać linki, żeby otywierały się strony z katalogu "strony/historia"

Więc jaki i gdzie dać kod?questionmark.gif
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #27





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

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


[php:1:e7c3289012]<?php
$page = ( isset($HTTP_GET_VARS['page']) && !empty($HTTP_GET_VARS['page']) ) ? $HTTP_GET_VARS['page'] : 'index';

if( file_exists('strony/' . $page . '.inc') )
{
if( ($page == 'liga') && file_exists('historia/' . $HTTP_GET_VARS['historia'] . '.inc') )
{
include('historia/' . $HTTP_GET_VARS['historia'] . '.inc');
}
else
{
include('strony/' . $page . '.inc');
}
}
else
{
echo "Strona niedostępna!";
}
?>[/php:1:e7c3289012]
Resztę już powinieneś sobie wykombinować...


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
dundey
post
Post #28





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Heh...
Teraz znowu taki błąd:

Parse error: parse error in d:phpfoxservwwwprojektstronyliga.inc on line 2

Druga linia to:
[php:1:7ec27f2412]
$page = ( isset($HTTP_GET_VARS['page']) ) && !empty($HTTP_GET_VARS['page']) ) ?[/php:1:7ec27f2412]

Nie znam się dobrze na php, więc sam tego nie wykombinuje. oczekuje podania mi tego na tacy!!! Po to tu napisałem, żeby sie tego dowiedzieć! Gdybym umiał to nawet bym tu nie pisał!!
Go to the top of the page
+Quote Post
dundey
post
Post #29





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Kurcze, bardzo mi na tym zalezy...
Bardzo prosze o pomoc!!!
Go to the top of the page
+Quote Post
dundey
post
Post #30





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Dzięki Kameleonowi problem został zażegnany smile.gif
Wielkie dzięki smile.gif
Go to the top of the page
+Quote Post
dundey
post
Post #31





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


[php:1:58c06017b2]<?php
$page = ( isset($HTTP_GET_VARS['page']) && !empty($HTTP_GET_VARS['page']) ) ? $HTTP_GET_VARS['page'] : 'index';

if( file_exists('linki/' . $page . '.inc') )
{
if( $page == 'liga' )
{
if( isset($HTTP_GET_VARS['historia']) && file_exists('linki/historia/' . $HTTP_GET_VARS['historia'] . '.inc') )
{
include('linki/historia/' . $HTTP_GET_VARS['historia'] . '.inc');
}
else
{
include('linki/' . $page . '.inc');
}
}
else
{
include('linki/' . $page . '.inc');
}
}
else
{
echo "Strona niedostępna!";
}
?>[/php:1:58c06017b2]

Potrzebuję ten kod przerobić tak, aby otwierał pliki w katalogach umieszczonych w katalogu linki. Chce, aby obsługiwał jeszcze następujące katalogi:
- foto
- ludzie
- publicystyka
Go to the top of the page
+Quote Post
spenalzo
post
Post #32





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


Nie, to już lekka przesada.


--------------------

Go to the top of the page
+Quote Post
dundey
post
Post #33





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 7.04.2003

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


Poprawi ktos dla mnie ten kod?
Proszę...
Go to the top of the page
+Quote Post
members_of_mayda...
post
Post #34





Grupa: Zarejestrowani
Postów: 76
Pomógł: 0
Dołączył: 17.06.2003
Skąd: Niemcy / Siemianowice

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


[php:1:2af75058db]<?php

$rozsz=".php";
if(file_exists("poczta/$akcja$rozsz")){ //sprawdza czy plik do wstawienia istnieje
include("poczta/$akcja$rozsz");
}
else {
include("poczta/brak$rozsz"); // jesli nie ma pliku, lub parametru wstawia text dla strony glównej
}

?>[/php:1:2af75058db]

tak jest ok


--------------------
pozdrawiam :)
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
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: 21.08.2025 - 12:35