Spaltenweise DB-Ausgabe

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Spaltenweise DB-Ausgabe

    Hallo,
    hat zufällig jemand ein Skript wie man Datensätze nicht Zeilenweise, sondern Spaltenweise ausgeben kann.

    Also ich habe ein HTML-Tabelle mit 2 Spalten und wenn ich jetzt z.b. 11 Datensätze in der DB haben sollen in der ersten Spalte die ersten 6 und in der zweiten die anderen 5 ausgegeben werden.

    Bisher hatte ich Ausgaben immer nur Zeilenweise gemacht und hatte dafür auch ein easy Skript:
    PHP-Code:
    // DB Abfrage
    $spaltenanzahl=2
    $num 
    mysql_num_rows($result);
    $show_rows=ceil($num/$spaltenanzahl);
    echo 
    '<table  border="0" cellspacing="0" cellpadding="0">';
    for(
    $i=0;$i<$show_rows$i++) {
     echo 
    "<tr>";
    for (
    $ii=0;$ii<$spaltenanzahl;$ii++) {
      
    $tmpspalte = @mysql_result($result,$auslesen,"tmpspalte");
       echo 
    '<td width="197">$tmpspalte</td>';
       echo 
    '<td width="20">&nbsp;</td>'

    }
    echo 
    "</tr>";
    }
    echo 
    '</table>'
    Gibt es so eine einfache Logik auch für die spaltenweise Ausgabe? Bzw. hat das jemand bei sich rumliegen? Danke schon einmal!

  • #2
    - benutz mal die suche => gruppenwechsel oder spaltenweise
    - der modulo (%) ist dein freund
    Kissolino.com

    Kommentar


    • #3
      @wurzel
      das wäre zeilenweise und damit schritt #2

      schirtt #1:
      PHP-Code:
      function do_magic($data$columns 2) {
          
      $data array_chunk($dataceil(count($data) / $columns));
          
      $result = array();
          
      $arrays count($data);
          
      $count count($data[0]);
          for (
      $i 0$i $count$i++)
              for (
      $j 0$j $arrays$j++)
                  if (isset(
      $data[$j][$i]))
                      
      $result[] = $data[$j][$i];
          return 
      $result;

      so kannst du das array "transponieren" (ist nicht ganz das richtige wort, aber du wirst ja sehen was rauskommt

      zur ausgabe kommt dir dann schritt #2 zu hilfe
      Ich denke, also bin ich. - Einige sind trotzdem...

      Kommentar


      • #4
        Ich hab es jetzt anderst gemacht. Ist zwar nicht elegant, aber es funktioniert

        PHP-Code:
        <table width="400" border="3" cellspacing="0" cellpadding="0">
          <tr>

        <?php

        $anzahl 
        25;
        $tmpSpaltenAnzahl round($anzahl/2);

            
        // Erste Spalte
            
        echo '<td width="159">'
            for(
        $i=0;$i<$tmpSpaltenAnzahl;$i++) {    
                echo 
        "$i - Testausgabe <br>"
            
            }
            echo 
        '</td><td width="63"><p>&nbsp;</p></td>';
            
            
        // Zweite Spalte
            
        echo '<td width="159">'
            for(
        $i=$tmpSpaltenAnzahl;$i<$anzahl;$i++) {    
                echo 
        "$i - Testausgabe<br>"
            
            }
            echo 
        '</td><td width="63"><p>&nbsp;</p></td>';    


        ?>
          </tr>
        </table>

        Kommentar


        • #5
          - benutz mal die suche => gruppenwechsel oder spaltenweise
          @wurzel
          das wäre zeilenweise und damit schritt #2
          ???

          Kommentar

          Lädt...
          X