Autor | Zpráva | ||
---|---|---|---|
Návštěvník Profil * |
#1 · Zasláno: 17. 2. 2014, 18:42:41
Upravuju šablonu pro výpis zpráv a narazil jsem na zvláštní věc při kterém mi zamrzne server. Standardně v html kódu je:
<?while(isset($u->messages->ids[$p])) { /* Show messages - Begin */ ?> Nyní kontroluji jestli příspěvek obsahuje nějaké závadné slova v $u->messages->badrate[$p] .... a porovnávám s nastavením filtru uživatele $_SESSION['opt_acceptbw_mes']. Nejdříve jsem zkoušel die a break a obojí bylo funkční - server se nesekl: if ( $u->messages->badrate[$p]>$_SESSION['opt_acceptbw_mes']) die; // nebo break - má podobný funkční výsledek Nyní zkouším toto: <?while(isset($u->messages->ids[$p])) { if ( $u->messages->badrate[$p]>$_SESSION['opt_acceptbw_mes']) continue; ?> <tr ... // výpis řádku tabulky |
||
Tori Profil |
#2 · Zasláno: 17. 2. 2014, 19:20:26
Návštěvník:
Mění se někde uvnitř cyklu proměnná $p? (= asi by měla) |
||
petr 6 Profil |
#3 · Zasláno: 17. 2. 2014, 19:21:14
Před continue patří
$p++ (případně jiná inkrementace)
|
||
Návštěvník Profil * |
#4 · Zasláno: 17. 2. 2014, 19:45:59
Tori, petr 6:
Aha, už vím kde je problém. Dík za nakopnutí. Já ještě zkoušel podmínku přesunout do while a pak mi došlo že to by přerušilo smyčku úplně. Takže if ($u->messages->badrate[$p]>$_SESSION['opt_acceptbw_mes']) { $p++; continue; } funguje |
||
Časová prodleva: 10 let
|
0