Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> [HTML][PHP]Zmiana tytułu stron
radziowie
post 18.11.2010, 12:03:02
Post #1





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 1.11.2010

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


Mam taki problem. Otóż mam parę podstron. Chciałbym aby dla każdej był inny tytuł. Mam tak:
- strone główną (index.php)
- nowości (newsy.php)
- instrukcje (instrukcje.php)
- ...
I tak chciałbym, aby gdy np. wejdę na instrukcje (czyli stronę .../instrukcje.php) To w tytule będę miał <title>Instrukcje</title>.
Szukałem trochę i znalazłem
  1. http://www.kess.snug.pl/?sid=10&pid=23

Jednak jak widzimy tytuł pobierany jest ze strony index.php?go=... Co zrobić aby można było zastosować skrypt do moich potrzeb? Po prostu chciałbym aby na podstawie nazwy strony przypisywał tytuł.

Ten post edytował Cysiaczek 18.11.2010, 12:18:59
Powód edycji: [Cysiaczek]:
Go to the top of the page
+Quote Post
lDoran
post 18.11.2010, 12:08:26
Post #2





Grupa: Zarejestrowani
Postów: 172
Pomógł: 13
Dołączył: 15.11.2009

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


  1. function setTitle($title) {
  2. echo '<titile>' . $title . '</title>';
  3. }


  1. <?php
  2. setTitle('tytul strony');
  3. ?>
  4. </head>
  5.  
  6. </body>
  7. </html>


To skąd będziesz pobierać tytuł zależy od Ciebie(np. sprawdzając nazwę pliku .php)

Ten post edytował lDoran 18.11.2010, 12:09:19
Go to the top of the page
+Quote Post
bismak
post 18.11.2010, 12:09:27
Post #3





Grupa: Zarejestrowani
Postów: 24
Pomógł: 1
Dołączył: 4.02.2010
Skąd: Jasło

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


Jeśli masz strony na include to możesz włożyć instrukcje switch tam gdzie będzie tytuł.
Go to the top of the page
+Quote Post
radziowie
post 18.11.2010, 12:18:25
Post #4





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 1.11.2010

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


Chcę stworzyć stronę tytuly.php. Czyli:
  1. <?php


Chcę stworzyć stronę tytuly.php. Czyli:
  1. <?php
  2. $tytul_strony = array (
  3. srodek => 'glowna',
  4. instrukcje => 'instrukcje111'
  5. );
  6. ?>

Czyli tak jak napisałem chciałbym, aby na podstawie załadowanej strony czytał nazwe. Przypuśćmy, że jesteśmy na instrukcje.php to nazwa=instrukcje, czyli sprawdza w tablicy i podaje podany mu tytuł czyli instrukcje 111
Go to the top of the page
+Quote Post
lDoran
post 18.11.2010, 12:47:10
Post #5





Grupa: Zarejestrowani
Postów: 172
Pomógł: 13
Dołączył: 15.11.2009

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


Nie rozumiem czego oczekujesz, gotowego skryptu, czy pomocy w jego wykonaniu. Jeżeli pomocy to daj kod, który napisałeś, natomiast przy gotowym skrypcie pomyliłeś działy.
Go to the top of the page
+Quote Post
radziowie
post 18.11.2010, 12:55:38
Post #6





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 1.11.2010

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


to tak tworze tablice i podaje ją do tytuly.php jak już opisałem wcześniej.
Teraz przechodzę do strony meta.php (jednej z części głównej, znajduje się na każdej stronie). I teraz piszę:
  1. <?php
  2. $go=$GET['go'];
  3. if ($go=='' || $go='index')
  4. {
  5. $go='Strona główna';
  6. }
  7. else
  8. {
  9. include('./folder/tytuly.php');
  10. }
  11. /// potem <html><meta ....
  12. <title><? echo $tytul[$go] ?>
  13. ...


Na razie tyyle, bo to może zadziałać dla strony głównej a nie wiem do końca jak się odwołać odpowiednio do tablicy w tytuly.php.

Ten post edytował radziowie 18.11.2010, 12:56:52
Go to the top of the page
+Quote Post
ADeM
post 18.11.2010, 13:13:20
Post #7





Grupa: Zarejestrowani
Postów: 455
Pomógł: 69
Dołączył: 23.10.2004
Skąd: Oświęcim

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


Odwołuj się tak jak teraz, tylko zmień strukturę tablicy:
  1. $tytul = array(
  2. 'strona' => 'tytul strony',
  3. 'strona druga' => 'drugi tytul'
  4. );


--------------------
Go to the top of the page
+Quote Post
radziowie
post 18.11.2010, 13:29:18
Post #8





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 1.11.2010

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


To jak jestem na stronie strona druga.php to jak to on będzie pobierał tą wartość?
bo chyba nie muszę dal każdego robić
  1. if ($go='druga strona')
  2. {
  3. $go='Strona druga';
  4. }
  5. ...

Czy jednak tak muszę?
Go to the top of the page
+Quote Post
lDoran
post 18.11.2010, 13:32:03
Post #9





Grupa: Zarejestrowani
Postów: 172
Pomógł: 13
Dołączył: 15.11.2009

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


Funkcja sprawdzająca tytuł:
  1. function getTitle($sIndex) {
  2. $aTitles = array('tytul1', 'tytul2', ...);
  3. $iRecords = count($aTitles);
  4. for($i = 0; $i < $iRecords; $i++) {
  5. if($aTitles[$i] == $sIndex;) {
  6. return $aTitles[$i];
  7. } else {
  8. return 'Domyślny tytuł';
  9. }
  10. }
  11. }


  1. $title = getTitle($_GET['title']);
  2.  
  3. echo '<title>' . $title . '</title>';
Go to the top of the page
+Quote Post
ADeM
post 18.11.2010, 13:32:29
Post #10





Grupa: Zarejestrowani
Postów: 455
Pomógł: 69
Dołączył: 23.10.2004
Skąd: Oświęcim

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


Po pierwsze: masz błąd. "if ($go=='' || $go='index')" zamień na "if ($go=='' || $go=='index')"
Tak samo używaj gdzie indziej. Operator porównania to "==", a nie "=".

W tablicy zamiast strona/strona druga wpisz po prostu wartości $go.

EDIT:
~IDoran: bez sensu ta funkcja. Zwraca to samo co przyjmuje, chyba, że nie znajdzie tego w tablicy.

Ten post edytował ADeM 18.11.2010, 13:34:38


--------------------
Go to the top of the page
+Quote Post
radziowie
post 18.11.2010, 13:42:09
Post #11





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 1.11.2010

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


1. Co do adem się zgadzam co do "==" i "=". Moja wina.
2. [quote]W tablicy zamiast strona/strona druga wpisz po prostu wartości $go.[/guote}
Nie rozumiem, gdzie to chcesz wstawić.
3. Idoran czy możesz wytłumaczyć jak działa ta funkcja? Jak ona może być zastosowana w moim przypadku?
Go to the top of the page
+Quote Post
ADeM
post 18.11.2010, 13:50:39
Post #12





Grupa: Zarejestrowani
Postów: 455
Pomógł: 69
Dołączył: 23.10.2004
Skąd: Oświęcim

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


Zrób tablicę, której indeksy będą wszystkimi wartościami zmiennej $go jakie mogą wystąpić, a wartościami niech będą tytuły.

Ten post edytował ADeM 18.11.2010, 13:51:58


--------------------
Go to the top of the page
+Quote Post
radziowie
post 18.11.2010, 14:07:50
Post #13





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 1.11.2010

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


NIe rozumiem tego:
[guote]Zrób tablicę, której indeksy będą wszystkimi wartościami zmiennej $go[/guote}
to jak mają wygladać
$go['glowna] => 'strona glowna',,
$go['strona druga'] => ' blabla' ...
?

Ten post edytował radziowie 18.11.2010, 14:12:43
Go to the top of the page
+Quote Post
ADeM
post 18.11.2010, 14:13:20
Post #14





Grupa: Zarejestrowani
Postów: 455
Pomógł: 69
Dołączył: 23.10.2004
Skąd: Oświęcim

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


Ech -.-'
Dokładnie tak jak napisałem wcześniej:
  1. $tytuły = array(
  2. 'WARTOSC ZMIENNEJ $GO DLA STRONY PIERWSZEJ' => 'tytul pierwszej strony',
  3. 'WARTOSC ZMIENNEJ $GO DLA DRUGIEJ STRONY' => 'tytul drugiej strony',
  4. );
  5.  
  6. echo $tytuly[ $go ];

Nie wiem jakie $go może mieć wartości, bo tego nie napisałeś.


--------------------
Go to the top of the page
+Quote Post
radziowie
post 18.11.2010, 14:23:09
Post #15





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 1.11.2010

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


No to już napisałem wcześniej
  1.  
  2. $tytul = array(
  3.  
  4. 'strona' => 'tytul strony',
  5.  
  6. 'strona_druga' => 'drugi tytul'
  7.  
  8. );


Czyli zmienna może być strona (od nazw strony głównej czyli strona.php lub strona_druga (od nazwy podstrony strona_druga.php)
Go to the top of the page
+Quote Post
ADeM
post 18.11.2010, 14:28:25
Post #16





Grupa: Zarejestrowani
Postów: 455
Pomógł: 69
Dołączył: 23.10.2004
Skąd: Oświęcim

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


No to z czym masz jeszcze jakiś problem?


--------------------
Go to the top of the page
+Quote Post
radziowie
post 18.11.2010, 14:33:22
Post #17





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 1.11.2010

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


Z tym żeby wyjąć zmianną, czyli nazwe pliku. Przyjmijmy, że jesteśmy na strona_druga.php to on wyciąga "strona_druga", sprawdza tablicę i jeśli tam jest to wyciąga z niej tytuł, czyli wartość $go.
Go to the top of the page
+Quote Post
ADeM
post 18.11.2010, 14:38:32
Post #18





Grupa: Zarejestrowani
Postów: 455
Pomógł: 69
Dołączył: 23.10.2004
Skąd: Oświęcim

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


Poddaje się...
Co to jest w takim razie $go, gdzie to definiujesz, i jaką ma wartość.
Zobacz też co zawiera tablica $_SERVER.


--------------------
Go to the top of the page
+Quote Post
radziowie
post 18.11.2010, 14:50:57
Post #19





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 1.11.2010

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


Może, źle się wyraziłem. Zacznę od początku. Mam kod:

  1. <?php
  2. $go=$GET['go'];
  3. if ($go=='' || $go='index')
  4. {
  5. $go='Strona główna';
  6. }
  7. else
  8. {
  9. include('./folder/tytuly.php');
  10. }
  11. /// potem <html><meta ....
  12. <title><? echo $tytul[$go] ?>

Może mam ten kod trochę pokręcony. Mamy zmienną $go która pobiera (przynajmniej powinna pobierać) nazwy strony na której jesteśmy. W przypadku gdy jesteśmy na stronie głównej index.php to wyświetla Strona główna jak widać w powyższym kodzie. Problem w tym, że nie wiem dokładnie jak pobrać zmienną $go z nazwy pliku a następnie porównać ją z naszą tablicą. Mam nadzieję, ze teraz trochę zrozumialej napisałem.
Go to the top of the page
+Quote Post
lDoran
post 18.11.2010, 15:03:05
Post #20





Grupa: Zarejestrowani
Postów: 172
Pomógł: 13
Dołączył: 15.11.2009

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


Co Ty przekazujesz w zmiennej $go?
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 Wersja Lo-Fi Aktualny czas: 7.05.2025 - 06:53