Peter12
8.10.2010, 18:10:43
Witam mam problem z php mianowicie zrobiłem sobie menu na switch i teraz chcę robić tak:
index.php?strona=druzyny&nazwadruzyny Wie ktoś jak to zrobić?
nospor
8.10.2010, 18:12:13
index.php?strona=druzyny&nazwa=nazwadruzyny
echo $_GET['nazwa'];
PawelC
8.10.2010, 18:13:06
Jak już, to zrob tak: index.php?strona=druzyny&druzyna=nazwadruzyny
Dalej pobierasz nazwę drużyny, poprzez $_GET['druzyna'], i na tej podstawie wyświetlasz nazwę drużyny przy pomocy echo, , lub pobierasz dane z bazy, jako warunek dając nazwę drużyny.
//nospor śledzisz mnie?
Peter12
8.10.2010, 18:15:57
Mam coś takiego:
<?php
switch($_GET['strona'])
{
case 'newsy':
include('indexgl.php');
break;
case 'terminarz':
include('terminarz.php');
break;
case 'druzyny':
include('druzyny.php');
break;
case 'regulamin':
include('regulamin.php');
break;
case 'galeria':
include('galeria.php');
break;
default:
include('indexgl.php');
break;
}?>
Gdzie dodać drugie $_GET?
PawelC
8.10.2010, 18:17:54
index.php?strona=druzyny&nazwa=nazwadruzyny
Skoro przesyłasz dane w linku, do index.php, to w index.php powinien być drugi $_GET. Oczywiście musisz sprawdzić, czy $_GET['nazwa'] jest pusta, jeżeli tak to nie robisz nic, jeżeli coś w niej jest, to wyświetlasz jej nazwę, poprzez echo $_GET['nazwa'];
nospor
8.10.2010, 18:18:15
Tam, gdzie potrzebujesz
Peter12
8.10.2010, 18:20:47
Możecie mi to jakoś zmienić?
nospor
8.10.2010, 18:22:59
Ok, ja zmienie lokalizacje tematu - przenosze.
Czego nie wiesz?
Peter12
8.10.2010, 18:46:48
Nie wiem gdzie dodać to drugie $_GET żeby działało ;o
Refresh!
np. dodatkowy switch jeśli parametr 'strona' to 'druzyny':
case 'druzyny':
$nazwa = isset($_GET['nazwa']) ?
$_GET['nazwa'] : ''; switch ($nazwa) {
case 'druzyna1':
include('druzyna1.php');
break;
case 'druzyna2':
include('druzyna2.php');
break;
default:
include('druzyny.php');
}
break;
Peter12
8.10.2010, 21:29:02
Ok wszystko działa jak należy, dziękuję za odpowiedź!
Jakbyś mógł mi jeszcze powiedzieć do czego służy isset i ten pytajnik po nawiasie to byłbym wdzięczny.
isset($_GET['nazwa']) - sprawdza czy zmienna $_GET['nazwa'] istnieje i czy nie jest równa NULL, manual:
issetwyrażenie ze znakiem zapytania i dwukropkiem to tzw. operator trójargumentowy, jest to krótszy zapis warunku z if, czyli zapisu:
if (isset($_GET['nazwa']) { $nazwa = $_GET['nazwa'];
}
else {
$nazwa = '';
}
manual:
Ternary Operator
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.