• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Tabelle aus Datum von Datenbank

Jeremygolf

Mitglied
Hallo zusammen,

ich habe eine Datenbank mit turnieren und möchte dazu eine Tabelle erstellen.
Das ist meine jetzige Seite: http://jeremyfreiburghaus.ch/resultate.html
Hier habe ich alles mühsam mit html eingetippt.
Nun möchte ich, dass ich das mit einer Datenbank vereinfachen kann.
Mit dem folgenden Code kann ich zwar die tunriere auslesen, aber als Monat gibt er mir nur einen an und schreibt alle turniere in den gleichen Monat. Am schluss muss es so aussehen wie bei meiner jetzigen.

Danke

PHP:
<?php
                  $sql = mysql_query("SET NAMES 'utf8'");
                $sql = mysql_query("SELECT * FROM turnier");
               
                while($row = mysql_fetch_array($sql)){
                $anfang = $row["turnieranfang"];
                $anfangmonat = date("F",strtotime($anfang));           
                  ?>
                 
                  <table border="0" cellpadding="0" cellspacing="2" width="100%">
                    <tbody>
       
                    <h2><?php echo $anfangmonat; ?></h2>
                    <tr>
                        <th style="text-align: left;, width: 50px;">von</th>
                        <th style="text-align: left;, width: 50px;">bis</th>
                        <th style="text-align: left;, width: *;">Turnier</th>
                        <th style="text-align: left;, width: 50px;">Score</th>
                        <th style="text-align: right;, width: 50px;">Rang</th>
                    </tr>
                   
                    <?php
                      $sql = mysql_query("SET NAMES 'utf8'");
                    $sql = mysql_query("SELECT * FROM turnier ORDER BY turnieranfang");
               
                    while($row = mysql_fetch_array($sql)){
                    $name = $row["turniername"];
                    $anfang = $row["turnieranfang"];
                    $anfang = date("d.m",strtotime($anfang));
                    $ende = $row["turnierende"];
                    $ende = date("d.m",strtotime($ende));
                    $ort = $row["turnierort"];                 
                  ?>
           
                    <tr>
                        <td nowrap="nowrap" valign="top" width="50"><?php echo $anfang; ?></td>
                        <td nowrap="nowrap" valign="top" width="50"><?php echo $ende; ?></td>

                          <td valign="top" width="*"><a href="turniere.php?id=1301"><?php echo $name; ?><br>
                          <?php echo $ort; ?><a/></td>
                        <td nowrap="nowrap" valign="top" width="70"><?php echo $score; ?></td>
                        <td align="right" nowrap="nowrap" valign="top" width="30"><?php echo $rang; ?></td>
                    </tr>
                <?php } ?>
           
                </tbody>
            </table>
            <?php } ?>
 
Erstmal vorneweg <h> Tags sind nicht valide in einem tbody und ich würde mysqli statt mysql verwenden. mysql wird nicht mehr lange von php unterstützt

Zum Problem: Du hast 2 logische Fehler im Code:
1. überschreibst du die Variablen $row und $sql aus der ersten Schleife in der zweiten.
2. Musst du im zweiten SQL Query irgendwie auf den Monat eingrenzen der angezeigt werden soll. Sonst wird immer alles angezeigt.
 
Zurück
Oben