Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: while-ongelma

Sivun loppuun

Vasta_alkaja [07.11.2008 12:33:46]

#

Silmät ristissä tuota tuijottanut jo tunnin. Lukenut php.netin manuaalia eikä millään aukea.

Miksi ei luo taulua 4*8

$i = 1;
$rivit = 1;

while($rivit <= 5)
{

    echo '<tr>';

    while($i <= 9)
    {
        $i++;

        echo '<td>&nbsp;</td>';

    }

    echo '</tr>';
}

Pekka Karjalainen [07.11.2008 12:59:34]

#

i:n arvo pitää palauttaa ykköseksi sisemmän silmukan loputtua

Jaqqo [07.11.2008 13:13:24]

#

$rivi:n arvoa pitää puolestaan kasvattaa ulomman silmukan lopussa.

Lebe80 [07.11.2008 13:21:06]

#

jos haluaa 4*8 taulukon, niin tähän mielestä for -looppi on paljon selkeämpi

echo '<table>';
for ($y=0; $y<8; $y++ ){
   echo '<tr>';
   for ($x=0; $x<4; $x++ ){
      echo '<td>foo</td>';
   }
   echo '</tr>';
}
echo '</table>';

tsuriga [07.11.2008 13:29:27]

#

<?php
echo '<table>', str_repeat('<tr>' . str_repeat('<td>&nbsp;</td>', 4) . '</tr>', 8), '</table>';
?>

Lebe80 [07.11.2008 14:21:24]

#

tsurigan juttu toimii vain, jos oikeasti tarvitaan tyhjä taulukko.

tsuriga [07.11.2008 14:24:07]

#

Kyllähän tuohon saa tungettua lorem ipsumia ja muuttuvaakin dataa vaikka miten, mutta totta kuitenkin, että eihän tuo aivan niin helppo ratkaisu ole dynaamisuutta ajatellen verrattuna esim. for-versioon.

Vasta_alkaja [08.11.2008 18:24:00]

#

Mielenkiintoisia ja monenlaisia ratkaisuja niitä tuleekin, mutta tapojensa orjana pysyn tässä tilanteessa vielä tuossa ensimmäisessä vaihtoehdossa. Seuraavalla kerralla voisi jo pakottaa itsensä kokeilemaan muutakin.

- Thanks

tsuriga [08.11.2008 22:27:50]

#

Korjataan nyt omia mietteitä vielä sen verran, että dynaamisen datan lisääminen tuohon str_repeat-versioon on hankalampaa kuin ensin ajattelin. Oikeassa tilanteessa pyörittelisin forilla kyllä ihan jo semanttisuudenkin kannalta.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta