Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] kilka warunków if
Forum PHP.pl > Forum > Przedszkole
tenloginjestzajety
Witam
próbuje zrobić kilka warunków, próbowałem również ze switch. Bezskutecznie, na podstawie tekstu wpis przypisywany jest do kategorii, dlatego najpierw sprawdzam czy w ogóle w tekście występuje liczba jeśli tak to przypisuje do kategorii jeden, następnie do subkategorii.

Próbuje tak:
  1. <?php
  2. $string = 'tekst decydujący o przypisaniu do kategorii: jedenaście';
  3. if($string == '%jeden%') {$text = 'brak';} else
  4. {
  5. if($string == '%jedenaście%') {$text = 'jedenaście w grupie jeden';} else {$text = 'grupa pozostałe';}
  6. }
  7. echo $text;
  8. ?>


Wiem, że można zrobić stosując operatory, ale wtedy warunków będzie znacznie więcej. Pozdrawiam
nospor
if($string == '%jeden%')
Skad pomysl ze w php dzialaja operatory % w porownywaniu tekstow? Po co tak wymyslac funkcjonalnosc, ktora nie istnieje?
tenloginjestzajety
  1. substr_count(strtolower($string), 'jeden');


dzięki, a co z warunkami?
nospor
Po pierwsze miales uzyc strpos() zamiast kombinacji wink.gif
Po drugie nie wiem jak inni ale ja nie rozumiem co ty chcesz osiagnac
Tomplus
Wiesz że na twoim przykładzie, to warunek pierwszy będzie zawsze spełniony jako pierwszy?

Dlatego jeżeli masz jakąś logikę w stringach, to może lepiej ją użyć i np. zastosować wyrażenia regularne, aby pobrać cały liczebnik, zamiast jego fragment. A potem sprawdzić czy istnieje on w tablicy liczebników.
tenloginjestzajety
Przy dodawaniu tematu chciałbym, aby został on przypisany do odpowiedniej kategorii, dlatego wybór kategorii zależny jest od tytułu tematu jaki doda użytkownik.

Przykładowo, temat zawierający słowo "pożyczka" otwiera kategorie "pożyczki", dalej, jeżeli temat zawiera również słowo "online" to dodawany jest do subkategorii "pożyczki online". Jeżeli nie zawiera to dodawany jest do subkategorii "pozostałe" w kategorii "pożyczki". Jeśli tytuł tematu nie zawiera w ogóle słowa "pożyczka" to dodawany jest do kategorii "inny".

Kategorie:

Pożyczki
- pożyczki online
- pozostałe

Inne
Tomplus
A lista kategorii jest w bazie tak?

To nie lepiej wysyłać zapytanie do bazy?
Kod
SELECT name FROM `table` WHERE name LIKE ('%slowo1%') OR name LIKE ('%slowo2%')

ograniczyć słowa kluczowe do np. min. 5 znaków i tak przygotować zapytanie, aby wyświetliły się te kategorie z danym słowem kluczowym.
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.