Avatar billede tanzaweb Nybegynder
12. august 2004 - 17:40 Der er 3 kommentarer og
1 løsning

udskriv kun 2005 en gang

Jeg får fra en query af 3 tabeller noget data ud hvor der er følgende oplysninger:

årstal
navn
og 12 tal under måneder

her skal jeg kun have udskrevet årstallet 1 gang, men navne og tallene flere gange alt efter hvor mange rækker der er.

Hvordan gør jeg lige dette.

er det noget med:

if "årstal = årstal udskrive 1 gang
den står i en tabel som her

2005
  Jan Feb Mar Apr Maj Jun Jul Aug Sept Okt Nov Dec
Malene 0 0 0 0 0 0 0 1 0 0 0 0
2005
  Jan Feb Mar Apr Maj Jun Jul Aug Sept Okt Nov Dec
Eva 0 0 0 0 0 0 0 0 1 0 0 0

men skal helst se således ud:

2005
Jan Feb Mar Apr Maj Jun Jul Aug Sept Okt Nov Dec
Malene 0 0 0 0 0 0 0 1 0 0 0 0
Eva 0 0 0 0 0 0 0 0 1 0 0 0
Avatar billede sukos Juniormester
12. august 2004 - 22:02 #1
$getaar = mysql_query("SELECT DISTINCT `aarstal` FROM `tabel`") or die (mysql_error());

while($visaar = mysql_fetch_object($getaar)) {
echo $visaar->aarstal ."<br>\n";
echo"Jan Feb Mar Apr Maj Jun Jul Aug Sept Okt Nov Dec<br>\n";

$hent_info = mysql_query("SELECT * FROM `tabel` WHERE `aarstal` = '". $visaar->aarstal ."'") or die (mysql_error());
    while($vis = mysql_fetch_object($hent_info)) {
    echo $vis->navn ." ". $vis->tal ."<br>\n";
    }
mysql_free_result($hent_info);
}
mysql_free_result($getaar);


Og så ellers putte det ind i en table, for layout's skyld :O)
Avatar billede tanzaweb Nybegynder
13. august 2004 - 09:54 #2
Det er nogenlunde sådan noget jeg skal bruge, men jeg glemte at fortælle jeg bruger en INNER JOIN for at sammen lægge 3 tabeller, en med årstal, en med navn, og så selve kalenderen.

Koden ser således ud:

$kon = mysql_query("SELECT DISTINCT aar.aars_tal,Kalender.*,users.*FROM (aar INNER JOIN Kalender ON aar.aar_id = Kalender.aar_id) INNER JOIN users ON Kalender.user_id = users.user_id");
                    ?>
                <td colspan="13" align="center"></td>
            </tr>
            <?php while ($month = mysql_fetch_array($kon)){
            ?>
            <tr>
                <td colspan="13" class="KalHead" align="center"><b><?php echo $month['aars_tal']; ?></b></td>
            </tr>
            <tr>
                <td class="KalHead">&nbsp;</td><td align="center" width="30" class="KalHead">Jan</td><td width="30" align="center" class="KalHead">Feb</td><td align="center" width="30" class="KalHead">Mar</td><td align="center" width="30" class="KalHead">Apr</td><td align="center" width="30" class="KalHead">Maj</td><td align="center" width="30" class="KalHead">Jun</td><td align="center" width="30" class="KalHead">Jul</td><td align="center" width="30" class="KalHead">Aug</td><td align="center" width="30" class="KalHead">Sept</td><td align="center" width="30" class="KalHead">Okt</td><td align="center" width="30" class="KalHead">Nov</td><td align="center" width="30" class="KalHead">Dec</td>
            </tr>
           
            <tr>
                <td class="KalHead"><?php echo $month['first_name']; ?></td><td align="center" class="Kaltext"><?php echo $month['Januar']; ?></td><td class="Kaltext" align="center"><?php echo $month['Februar']; ?></td><td class="Kaltext" align="center"><?php echo $month['Marts']; ?></td><td class="Kaltext" align="center"><?php echo $month['April']; ?></td><td class="Kaltext" align="center"><?php echo $month['Maj']; ?></td><td class="Kaltext" align="center"><?php echo $month['Juni']; ?></td><td class="Kaltext" align="center"><?php echo $month['Juli']; ?></td><td class="Kaltext" align="center"><?php echo $month['August']; ?></td><td class="Kaltext" align="center"><?php echo $month['September']; ?></td><td class="Kaltext" align="center"><?php echo $month['Oktober']; ?></td><td class="Kaltext" align="center"><?php echo $month['November']; ?></td><td class="Kaltext" align="center"><?php echo $month['December']; ?></td>
            </tr>
            <?php } ?>

Hvordan kan jeg få den til kun at udskrive året en gang, istedet for 2 eller flere gange alt efter hvor mange der har skrevet i det år????????
Avatar billede coderdk Praktikant
13. august 2004 - 15:39 #3
<tr>
                <td colspan="13" class="KalHead" align="center"><b><?php echo $month['aars_tal']; ?></b></td>
            </tr>


Ændres til:
<?php

  if ( $old_aar != $month['aars_tal'] )
  {
    $old_aar = $month['aars_tal'];

?>
            <tr>
                <td colspan="13" class="KalHead" align="center"><b>
<?php echo $month['aars_tal']; ?>
</b></td>
            </tr>
<?php

  }

?>
Avatar billede tanzaweb Nybegynder
13. august 2004 - 21:16 #4
Suppert det virker, så ændrede jeg lige noget selv da jeg kunne se hvad du havde sat op.

Tak.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester