![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 27.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
moja przygoda z PHP ogranicza się do drobnych zmian na WordPressie. Doszedłem do momentu, w którym prosty kod, według mnie, powinien działać, a nie działa. Znaczy działa, ale nie do końca. Już tłumaczę. Mam stronę opartą na Wordpressie, w niej widget, który pozwala wpisywać kod PHP i on działa, bo sprawdzałem kilkukrotnie, ale dziś mam problem. Chodzi o to, że mam system, który nalicza punkty użytkownikom za komentarze i takie tam. Chciałbym, żeby wyświetlał dla nich odznaki w zależności od uzyskanych punktów. Zrobiłem coś takiego:
Dla testów mam konto, na którym jest 65 punktów. I wszystko super, wyświetla mi obrazek a1. Jeżeli zmienię w powyższym kodzie wartości tak, by obrazek wyświetlał się od 75 punktów (na przykład), nic się nie wyświetla, czyli punkty pobiera prawidłowo, nie tym musi być problem. Problem pojawia się, gdy zmienię wartości tak, by a1 pojawiał się do na przykład 50 punktów, a a2 od 51. Mimo, że użytkownik ma 65, wciąż wyświetla mu się tylko a1. Nie mam pojęcia, co tam jest nie tak. Błagam o pomoc.
Powód edycji: [Daiquiri]: Dodaje tagi
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Kod <?php function showUserBadge($points) { if($points <= 50) { echo 'do 50'; } elseif($points >= 51 && $points <= 200) { echo 'od 51 do 200'; } } showUserBadge(51); Czyli w twoim wypadku musiało by to tak mniej więcej wyglądać: Kod <?php
function showUserBadge($userID) { $points = cp_getPoints($userID); if($points <= 50) { echo '<img src="http://ingame.com.pl/wp-content/uploads/2011/10/a1.jpg" />'; } elseif($points >= 51 && $points <= 200) { echo '<img src="http://ingame.com.pl/wp-content/uploads/2011/10/a2.jpg" />'; } } |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 27.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Niestety, nic się nie zmieniło. Nadal przy każdej konfiguracji punktowej wyświetla się obrazek a1.
W tym, co napisałeś od razu powinno pojawiać się a2, a pojawia się a1. Przypomnę, że użytkownik ma 65 punktów. Już nie wiem co mam robić (IMG:style_emoticons/default/sad.gif) Pomyślałem, żeby spróbować zamiast echo-wać, od razu wyświetlać obrazek (jeszcze w funkcji). Da się tak? Czy musi być najpierw echo a później wywołanie? Ten post edytował childofthewind 27.10.2011, 11:45:20 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 28 Dołączył: 7.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Administratorzy Postów: 1 552 Pomógł: 211 Dołączył: 7.07.2009 Skąd: NJ ![]() |
Uwaga ogólna - korzystajmy z poprawnego BBCode. Zobaczcie różnicę między listingiem tomm i Waszym.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 27.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
zobacz co Ci wyświetli jeśli zrobisz
przepraszam za złe wpisanie kodu, od teraz zwrócę na to uwagę. Tomm, wyświetla mi liczbę 0, dzięki czemu uświadomiłeś mi, że jednak błąd musi być w pobieraniu punktów. Muszę chyba lepsze odwołanie napisać. Już działa. Zmieniłem odwołanie na
i już poprawnie pobiera. Dziękuję Wam, bo wszystkie posty były pomocne! Ten post edytował childofthewind 27.10.2011, 12:54:59 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 27.08.2025 - 06:37 |