| Autor | Zpráva | ||
|---|---|---|---|
| Rygy Profil |
$vysledek=mysql_query("select * from vystoupeni");
$radku=mysql_num_rows($vysledek);
//vypisuje jednotlivé řádky v MySQL
for($num=1;$num<=$radku;$num++)
{
//vypisuje všechny hodnoty v 1 řádku MySQL
$pole=MySQL_Fetch_Array($vysledek);
//vypisuje dny od 1 do 31
for ($cislo=1;$cislo<=31;$cislo++)
{
if ($pole[1]==$cislo)
{
echo "<font color='red'>".$pole[1]."</font>";
}
else
{
echo $cislo;
}
}-zde je problém, že se mi vypíší čísla od 1 do 31 a jsou tam zaznačená data z mysql, ale problém je takový, že se ta řada od 1 do 31 tolikrát, kolikrát tam je záznamů v MySQL -problém je, že nevím, kam který cyklus dát -když oddělám dny, můžu si vypsat cisla z MySQL, ale jak všechny dát do 1né posloupnosti 1 až 31? |
||
| AM_ Profil |
#2 · Zasláno: 30. 4. 2009, 22:58:40 · Upravil/a: AM_
„problém je takový, že se ta řada od 1 do 31 tolikrát, kolikrát tam je
záznamů v MySQL“ zapomněl jsi na sloveso ve větě Zkus to třeba takhle:
$dny = array_fill(0, 31, false);
while ($zaznam = mysql_fetch_array($vysledek)){
$dny[$zaznam[1]-1] = true;
}
for($i = 0; $i < 31; $i++){
if ($dny[$i]) echo '<font color="red">';
echo $i+1;
if ($dny[$i]) echo '</font>';
}
//Edit: Alphard má pravdu, díky za opravu, patří tam false, v rychlosti mi to neseplo |
||
| Alphard Profil |
#3 · Zasláno: 30. 4. 2009, 23:01:26
Počet dní v měsíci vám pomůže získat funkce cal_days_in_month() (ne každý měsíc má 31 dní).
|
||
| Alphard Profil |
#4 · Zasláno: 30. 4. 2009, 23:03:43 · Upravil/a: Alphard
AM_:
první řádek bych dal takhle $dny = array_fill(0, 31, false); Ještě dodatek, v tomto případě by možná bylo lepší indexovat pole od 1 do počtu dnů. Odečítat při nastavování a přičítat při vypisování mně připadá zbytečné. |
||
| AM_ Profil |
#5 · Zasláno: 30. 4. 2009, 23:23:58
„v tomto případě by možná bylo lepší indexovat pole od 1 do počtu dnů“
Píšu to dle svého zvyku, kvůli jednodnosti vše indexuji od nuly, ale samozřejmě je možná (a pravda zde možná i lepší) indexace od jedničky. |
||
|
Časová prodleva: 17 let
|
|||
0