Autor Zpráva
Lion76
Profil *
Zdravim, nize uvedena funkce je plne funkci, ale zajimalo by mne, jestli by se nedala napsat lepsim zpusobem.

function zaskrtni($priznak){
if(isset($_SESSION['oznaceno']) && $_SESSION['oznaceno'] == $_SESSION['oznaceno']){
$ulozene = explode(";", $_SESSION['oznaceno']);
if(in_array($priznak, $ulozene)){
return 'checked="checked"';
}
}
}
Alphard
Profil
$_SESSION['oznaceno'] == $_SESSION['oznaceno']
to bude vždy TRUE, můžeš vynechat

$ulozene = explode(";", $_SESSION['oznaceno']);
if(in_array($priznak, $ulozene)){

to můžeš hledat přímo v řetězci, nemusíš to kopírovat do pole
Lion76
Profil *
Alphard

Dekuji. Myslis, ze prohledavani toho retezce bude rychle i pri 50x na jedne strance a treba 10 zaznamech v $_SESSION['oznaceno']?
Alphard
Profil
nevím přesně, ale 10 záznamů není moc, neměl by být problém
jen bych to pole vytvořil na začátku, ať se nedělá stejná věc 50x, teda jestli to dobře chápu
Lion76
Profil *
Alphard

No ja to mam tahkle ted

function zaskrtni($priznak){
if(isset($_SESSION['oznaceno'])){
if(in_array($priznak, explode(";", $_SESSION['oznaceno']))){
return 'checked="checked"';
}
}
}

Zkousel jsem to i takto:

$ulozene = explode(";", $_SESSION['oznaceno']);

a do html jsem dal jenom:

<? if(in_array($vypis["id"], $ulozene)) echo checked="checked"'; ?>

ale hazele to NOTICE, kdyz $_SESSION['oznaceno'] byla prazdna, tak jsem to dal do funkce.

Lze to nejak vyresit, abych to mel mimo funkci a nehazelo to varovani?

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0