Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Problem z if i dwoma warunkami
---Szaman---
post
Post #1





Goście







Dopiero zaczynam przygodę z PHP i mam problem, na który rozwiązania nie umiem znaleźć, mimo intensywnego przeszukiwania polsko- i anglojęzycznych for. Chodzi mianowicie o zastosowanie "if" w przypadku spełnienia dwóch, lub więcej warunków.

Tak sformułowałem formularz w pliku HTML, wybrałem metodę GET, żeby widzieć co jest przesyłane do pliku php:
Kod
<form method="get" action="kloss.php">
<input type="checkbox" name="bubu" value="bol"> Bolek <br />
<input type="checkbox" name="bubu" value="lol"> Lolek <br />
<input type="checkbox" name="bubu" value="tol"> Tola <br />
<input type="submit" value="GO"><br>
</form>

W przypadku zaznaczenia dwóch pierwszych pól chceckbox do php leci " ?bubu=bol&bubu=lol "
Wpierw spróbowałem interpretować te dane w php: w ten sposób:
Kod
if ($_GET['bubu'] == 'bol' && $_GET['bubu'] == 'lol')
{
echo'Bolek i Lolek.';
}
elseif ($_GET['bubu'] == 'bol' && $_GET['bubu'] != 'lol')
{
echo'sam Bolek.';
}

Pojawił się jednak problem z "widzeniem" przez php drugiego warunku, spróbowałem więc przez zdefiniowanie zmiennych:
Kod
$oni = $_GET['bubu'];
$onb = ($oni == 'bol');
$onl = ($oni == 'lol');
$ont = ($oni == 'tol');

if ($onb && $ont)
{
echo'Bolek i Lolek.';
}
elseif ($onb && !$ont)
{
echo'sam Bolek.';
}

Problem jednak pozostał. Podejrzewam, że ma to związek z tym, że w przypadku użycia danych liczbowych,a nie imion niemożliwe jest, by x=1 i jednocześnie x=2. Nie mam już kompletnie pomysłu jak sobie z tym poradzić i stworzyć php wyświetlające różne wyniki w zależności od tego czy którykolwiek z bohaterów jest zaznaczony w checkbox (czyli zastosowaniu empty lub isset), czy też w przypadku wszelkich możliwych ich kombinacji. Proszę o pomoc.
Go to the top of the page
+Quote Post

Posty w temacie


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 - 05:44