wersja skryptu MyBB:1.8.4
adres forum:#
na czym polega problem (screen, opis, komunikaty, nazwa stylu/theme/szablonu):
Cześć,
Mam taki kod:
Kod:
<select name="sort" id="sort" style="width: 99%;">
<option value="username"{$sort_selected['username']}>{$lang->sort_by_username}</option>
<option value="regdate"{$sort_selected['regdate']}>{$lang->sort_by_regdate}</option>
<option value="lastvisit"{$sort_selected['lastvisit']}>{$lang->sort_by_lastvisit}</option>
<option value="postnum"{$sort_selected['postnum']}>{$lang->sort_by_posts}</option>
<option value="threadnum"{$sort_selected['threadnum']}>{$lang->sort_by_threads}</option>
<option value="referrals"{$sort_selected['referrals']}>{$lang->sort_by_referrals}</option>
</select>
Jest to kod na filtrowanie wyszukiwania. Wszystkie opcje są w polu select, a jak zrobić, żeby każdy link był osobny, nie w polu select i jak się go naciśnie to się sortują wyniki wyszukiwania?
Może tak link do forum? ;/
Jasnowidzami nie jesteśmy...
Spróbuj tak:
Kod:
<select name="sort" id="sort" style="width: 99%;">
<option value="username"{$sort_selected['username']}>{$lang->sort_by_username}</option>
</select>
<select name="sort" id="sort" style="width: 99%;">
<option value="regdate"{$sort_selected['regdate']}>{$lang->sort_by_regdate}</option>
</select>
<select name="sort" id="sort" style="width: 99%;">
<option value="lastvisit"{$sort_selected['lastvisit']}>{$lang->sort_by_lastvisit}</option>
</select>
<select name="sort" id="sort" style="width: 99%;">
<option value="postnum"{$sort_selected['postnum']}>{$lang->sort_by_posts}</option>
</select>
<select name="sort" id="sort" style="width: 99%;">
<option value="threadnum"{$sort_selected['threadnum']}>{$lang->sort_by_threads}</option>
</select>
<select name="sort" id="sort" style="width: 99%;">
<option value="referrals"{$sort_selected['referrals']}>{$lang->sort_by_referrals}</option>
</select>
Teraz to wyświetla się w selekcie, tylko że pojedynczo ;P.
Przecież chciałeś żeby każdy był osobno ;/
Ale bez selectu -,- ... Sam link.
Przepraszam nie doczytałem dokładnie.
Spróbuj tak:
Kod:
<option value="username"{$sort_selected['username']}>{$lang->sort_by_username}</option>
<option value="regdate"{$sort_selected['regdate']}>{$lang->sort_by_regdate}</option>
<option value="lastvisit"{$sort_selected['lastvisit']}>{$lang->sort_by_lastvisit}</option>
<option value="postnum"{$sort_selected['postnum']}>{$lang->sort_by_posts}</option>
<option value="threadnum"{$sort_selected['threadnum']}>{$lang->sort_by_threads}</option>
<option value="referrals"{$sort_selected['referrals']}>{$lang->sort_by_referrals}</option>
Jest napis sortowania, ale bez linku
.
Powyższy kod nie ma prawa zadziałać.
Dane przez ten formularz są wysyłane metodą POST (google). Linki 'używają' metody GET.
W Twoim przypadku trzeba byłoby zrobić ukryte formularze z jedynie widocznym buttonem, który działałby jako odnośnik. Coś w takim stylu
Kod PHP:
<form method="post" action="memberlist.php">
<select name="sort" id="sort">
<option value="username">{$lang->sort_by_username}</option>
</select>
<input type="submit" name="submit" value="Nazwa">
</form>
<form method="post" action="memberlist.php">
<select name="sort" id="sort">
<option value="lastvisit">{$lang->sort_by_lastvisit}</option>
</select>
<input type="submit" name="submit" value="Inny tekst">
</form>
Możliwe że zamiast
Kod:
<select name="sort" id="sort">
<option value="lastvisit">{$lang->sort_by_lastvisit}</option>
</select>
można byłoby użyć
Kod:
<input type="hidden" name="sort" value="lastvisit">
Jeżeli druga opcja zadziałałaby to lepiej jest ją zastosować.
Matslom,
Zrobiłem tak:
Kod:
<input type="hidden" name="sort" value="lastvisit">
<option value="lastvisit">{$lang->sort_by_lastvisit}</option>
</input>
Ale znowu jest tekst ale linku brak
Najpierw naucz się jak działają formularze. Podałem rozwiązanie w poprzednim poście. Drugi raz nie chce mi sie tego tłumaczyć. Poza tym teraz złączyłeś dwa typu pól w jedno...
To możesz mi chociaż zrobić alfabetyczne sortowanie na podstawie tego, co napisałeś? Bo chcę zobaczyć jak to działa.
Zrobiłem tak:
Kod:
<input type="hidden" name="sort" value="lastvisit">{$lang->sort_by_lastvisit}</input>
I jest tak samo.
Zrobiłeś samo pole w dodatku błędnie. Gdzie jest formularz? Gdzie jest button do wysyłania formularza?
Kod PHP:
<form method="post" action="memberlist.php">
<input type="hidden" name="sort" value="lastvisit">
<input type="submit" name="submit" value="{$lang->sort_by_lastvisit}">
</form>
No teraz to mi wyszedł przycisk z tekstem, ale przynajmniej sortowanie działa..
Da się zrobić żeby był sam tekst?
Da się. Usuń bordery i tło w css dla tego przycisku.
Kod:
background: transparent;
border: none;
}
To się zmieni, że przycisk nie będzie widoczny, ale ja chcę żeby to było jako link, bez potwierdzenia przyciskiem (teraz to przycisku nie będzie, więc nie będzie się dało potwierdzić
).