Autor Zpráva
Taps
Profil
Zdravím, mohl by mi prosím někdo poradit jak vytvořit cyklus dle níže uvedené tabulky

První den (např. dnes) se budou vypisovat data z prvního sloupečku, druhý den z druhého sloupečku atd. Šestý den by se opět vypisovaly data z prvního sloupečku. Požadavkem rovněž je, aby si byl uživatel schopen cyklus, jakým se bude řadit nadefinovat sám
panther
Profil
Taps:
počet sloupců a řádků je vždy shodný? Platí vždy, že se jedná o posloupnost čísel 1-n, kde n je počet sloupců/řádků, posloupnost začíná v levé horním rohu jedničkou a s každým dalším sloupcem se vždy posouvá o řádku níž?

Pokud je zobrazení a řazení takto dfinované, pak nechápu konec příspěvku: „aby si byl uživatel schopen cyklus, jakým se bude řadit nadefinovat sám “. Očekával bych spíše, aby zadal počet řádků a/nebo sloupců a tabulka se dogenerovala sama dle definice výše.
Giga
Profil *
A veď si to pekne napísal:
Prvý deň - prvý stĺpček
dryhý deň - druhý stĺpček
...

Tabuľka je hotová.
Zadefinuj, čo je prvý deň a po koľkých dňoch sa cyklus zopakuje a je to.
Taps
Profil
panther, Giga:
tabulku jsem uvedl jako ilustrativní příklad. Posloupnost nemusí být zachována. Rovněž nemusí být zachován ani počet řádků.
juriad
Profil
koukám, že jsem si špatně přečetl zadání, kód dole tabulku jen vypíše

<?php
$MAX=5;

for($radek = 0; $radek <$MAX; $radek++) {
  for($sloupec = 0; $sloupec <$MAX; $sloupec++) {
    echo ($radek-$sloupec+$MAX)%$MAX+1;
    echo " ";
  }
  echo "\n";
}

?>
panther
Profil
Taps:
Posloupnost nemusí být zachována. Rovněž nemusí být zachován ani počet řádků.
a na základě čeho chceš automatický cyklus vytvořit? Jaká jsou pravidla, podmínky?

Nebo, teď mě napadlo, že jsem taky možná jen špatně pochopil zadání. Myslel jsem, že chceš tu tabulku cyklem vytvořit, ale ty ji možná máš a chceš ji jen zpracovat/vypsat? V jakém formátu je tabulka? Je to třeba vícerozměrné pole v PHP,s kterým by se dalo pracovat? Jak jsi k té tabulce přišel?
Taps
Profil
panther:
ano jedná se o vypsání dat z databázové tabulky.
V DB mám uložen seznam pracovníků
1 - pracovník číslo 1
2 - pracovník číslo 2
....atd
Data bych chtěl vygenerovat do sloupců dle data - [#1].
panther
Profil
Taps:
takže, co sloupec, to jedno datum? Jestli má být výsledkem (HTML) tabulka, ta se do sloupců generovat neumí, musíš ji vypisovat po řádcích.

Mohlo by to vypadat třeba takto:
$data = array();
while ($row = mysql_fetch_assoc($result)) {
    $data[$row['date']][] = $row['pracovnik']; 
    // vrati array 2012-04-19 => array (1, 2, 3, 4), 
    //             2012-04-20 => array (2, 3, 4, 1), 
    //             2012-04-21 => array (3, 4, 1, 2), 
    //             2012-04-22 => array (4, 1, 2, 3)
}

$count = count($data);

echo '<table>';
for ($i = 0; $i < $count; $i++) {
    echo '<tr>';
    foreach ($data as $users) {
        echo '<td>' . $users[$i];
    }
}

Výsledek:
<table>
<tr><td>1<td>2<td>3<td>4
<tr><td>2<td>3<td>4<td>1
<tr><td>3<td>4<td>1<td>2
<tr><td>4<td>1<td>2<td>3

Psal jsem to z hlavy, snad jsem se trefil. Alespoň směr by z toho měl být zřejmý :-)
Taps
Profil
panther:
OK, díky

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: