Autor Zpráva
Persy
Profil *
Zdravím,

rád bych se zeptal, mám následující kód:

                            <?php
                            foreach ($kurz_cas as $key => $value) {
                               if($kurz_hodiny[$key] == $v['hodiny'] and $kurz_den[$key] == 1){
                            ?>
                                        <h4><?php echo zkratit($kurz_nazev[$key],20);?></h4>
                            <?php
                               }
                            }
                            ?>

Dá se udělat z podobného zápisu funkce, něco ve smyslu:
function vypisKurzy($kurzy, $hodina, $den)

S tím ale, že v proměnné $kurzy budu předávat hodnoty v array?

Díky moc za radu
Keeehi
Profil
Persy:
Dá se udělat z podobného zápisu funkce
Ano dá.

Protože ale ani z tvého popisu ani z kódu se nedá moc poznat co to má dělat, tak více se momentálně poradit nedá.
Persy
Profil *
Keeehi:
Mám několik polí, např. $kurz_cas[], $kurz_hodiny[], $kurz_den[] apod. a potřebuji vždy vypsat kurzy pro daný den a hodinu, tzn. aktuálně musím pro každý den vypsat následující zápis 7x:
                            <?php
                            foreach ($kurz_cas as $key => $value) {
                               if($kurz_hodiny[$key] == $v['hodiny'] and $kurz_den[$key] == 1){
                            ?>
                                        <h4><?php echo zkratit($kurz_nazev[$key],20);?></h4>
                            <?php
                               }
                            }
                            ?>

Kde měním "$kurz_den[$key] == " na: 2,3,4, ... Proto bych potřeboval udělat funkci, která mi vypíše vždy tyto kurzy.

Snad jsem to napsal srozumitelně :)

Díky
Keeehi
Profil
Persy:
Už je to o něco lepší, ale jistý si pořád nejsem. Takže zkusím:
function vypisKurzy($kurz_cas, $kurz_hodiny, $v, $kurz_den, $kurz_nazev, $den) {
    foreach ($kurz_cas as $key => $value) {
        if($kurz_hodiny[$key] == $v['hodiny'] and $kurz_den[$key] == $den){
            echo "<h4>".zkratit($kurz_nazev[$key], 20)."</h4>";
        }
    }
}

Celé je to ale takové špinavé a ošklivé. Proč nemáš jedno vícerozměrné pole? Pokud to používáš jen pro zobrazení nějakého rozvrhu, pak by to asi byla ideální varianta.
Taps
Profil
Persy:
a nemůžeš udělat jedno vícerozměrné pole?
Persy
Profil *
Asi úplně nechápu, jak to myslíte? Aktuálně se vypíšu všechny data z db do pole:
while($v = mysqli_fetch_array($sql))
{
    $kurz_den[] = $v['den'];
    $kurz_cas[] = $v['cas'];
    ...
}

Pokud je vhodnější řešení, rád se nechám inspirovat.

Díky moc!
Taps
Profil
Persy:
třeba nějak takto
<?
while($v = mysqli_fetch_array($sql))
{
    $kurz_den[] = array[ 'den' => $v['den'], 'cas' => $v['cas']];
}
?>
Persy
Profil *
Taps:
Super, díky moc. A v tuhle chvíli to mohu do funkce použít jak?

Ještě jednou díky!


Nic, už to mám :)

function vypisKurzy($kurzy, $den)
{   
    foreach ($kurzy as $key => $value) {
        if($kurzy[$key]['den'] == 1){
            echo $kurzy[$key]['nazev'];
        }
    }
}

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: