tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
JA
ANTWORTEN
19
ZUGRIFFE
1431
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Wie kriege ich das hien, wenn ich eine SQL Abfrage ausführe, und die Daten in eine Tabelle schreibe, dass die 1 Zeile grau wird und die 2 Zeile weiss und die 3 Zeile grau etc...?
     

  2. #2
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.806
    Blog-Einträge
    5
    Beispielsweise so:

    Code php:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    
    <?php
     
    $row_classes = array(
        'roweven',
        'rowodd',
    );
     
    $result = mysql_query('…');
     
    $row_num = 0;
     
    while ($row = mysql_fetch_array($result)) {
        $row_class = $row_classes[$row_num % 2];
     
        echo '<tr class="'.$row_class.'">';
        &#8942;
        echo '</tr>';
     
        $row_num++;
    }
     
    ?>

    Dann noch entsprechend die CSS-Klassen roweven und rowodd definieren und fertig.
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  3. #3
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Ich habe es noch nicht hiengekriegt. Woran liegt das?

    PHP-Code:
    <?PHP

    include './lab/config.php';

    $sort addslashes($_GET['sort']);
    $cat addslashes($_GET['cat']);
    $go addslashes($_GET['go']);

    $row_classes = array(
        
    'roweven',
        
    'rowodd',
    );

        
    $query '
            SELECT
                    *
              FROM
                    `fi`
                   WHERE `cat`="'
    .$cat.'"
              ORDER BY
                    '
    .$sort.' '.$go.'
                  
            '
    ;
        
    $result mysql_query($query);
        
    $tmp null;
        
    $row_num 0;
        while( 
    $row mysql_fetch_array($resultMYSQL_ASSOC) ) {
            if( 
    $tmp != $row[$sort] ) {
                if( !
    is_null($tmp) ) {
                   
                }
                 
                 
    $row_class $row_classes[$row_num 2];
                 
                 echo 
    "<table border='0'  width='688' width='95%' cellspacing='0' cellpadding='0'><tr bgcolor='D9D9D9'>";
               echo 
    "<td colspan='10'>$row[$sort]</td></tr><br>";
                
     
            
                
    $tmp $row[$sort];
                
     
                
            }
            echo 
    "

    <tr class='.
    $row_class.'><td width='5'></td>
    <td><a href='"
    .$row['http4']."' target='_self'><img src='../03/icons/".$row['icon']."' align='absbottom' alt='' border='0' /></a>&nbsp;&nbsp;&nbsp;
    <a href='"
    .$row['http4']."' target='_self'>".$row['name']."</a></td>
            <td width='6'></td>
            <td>'"
    .$row['res']."'</td>
            <td width='6'></td>
            <td>'"
    .$row['size']."'</td>
            <td width='6'></td>
            <td>'"
    .$row['count']."'</td>
            <td width='6'></td>
            <td>'"
    .$row['date']."'</td>
        </tr>"
    ;
        
        
    $row_num++;
        }
        if( !
    is_null($tmp) ) {
        }
        
        echo 
    "</table>";

    ?>
    Der entsprechende Css Teil

    HTML-Code:
    .roweven { background-color: #dcdcdc; }
    .rowodd { background-color: #dcdcdc; }
     

  4. #4
    muhkuh muhkuh ist offline Mitglied Gold
    Registriert seit
    Mar 2003
    Ort
    bw
    Beiträge
    106
    Huhu asdfg. Dein Fehler liegt hier:
    HTML-Code:
    .roweven { background-color: #dcdcdc; }
    .rowodd { background-color: #dcdcdc; }
    Du musst den beiden CSS-Klassen auch verschiedene Farben zuweisen Z.B. #dcdcdc und #cdcdcd.


    Hui, das is auch mal ne coole Lösung Ich hab das bisher immer wie folgt gemacht:
    PHP-Code:
    $nr_class0// Zaehler definieren
      
    while( $row mysql_fetch_assoc$sql ) )
      {
          
    $nr_class++; // Zaehler bei jeder Ausgabe um 1 erhöhen
          
    $style $nr_class == 'style1' 'style2'// Prüfen, ob der der Rest von Zaehler/2 == 0 ist. Falls ja, dann wird der Variable der Wert "style1" zugewiesen, ansonsten der Wert "style2"
        
    echo '<table>';
        echo 
    '<tr><td class=" . $style . ">&nbsp;</td></tr>'// Einfügen des Wertes der Variable $style ("style1" oder "style2")
        
    echo '</table>';
      } 
    Geändert von muhkuh (05.03.06 um 00:14 Uhr)
     

  5. #5
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Scheint nicht zu funktionieren:

    PHP-Code:
    <?PHP

    include './lab/config.php';

    $sort addslashes($_GET['sort']); 
    $cat addslashes($_GET['cat']); 
    $go addslashes($_GET['go']);

    $row_classes = array(
        
    'roweven',
        
    'rowodd',
    );

        
    $query '
            SELECT
                    *
              FROM
                    `fi`
                   WHERE `cat`="'
    .$cat.'"
              ORDER BY
                    '
    .$sort.' '.$go.'
                  
            '
    ;
        
    $result mysql_query($query);
        
    $tmp null;
        
    $row_num 0;
        while( 
    $row mysql_fetch_array($resultMYSQL_ASSOC) ) {
            if( 
    $tmp != $row[$sort] ) {
                if( !
    is_null($tmp) ) {
                   
                }
                 
    $row_num++;
                 
    $row_class $row_num == 'roweven' 'rowodd';
                 
                 echo 
    "<table border='0'  width='688' width='95%' cellspacing='0' cellpadding='0'><tr bgcolor='D9D9D9'>";
               echo 
    "<td colspan='10'>$row[$sort]</td></tr><br>";
                
     
            
                
    $tmp $row[$sort];
                
     
                
            }
            echo 
    "

    <tr class="
    .$row_class."><td width='5'></td>
    <td><a href='"
    .$row['http4']."' target='_self'><img src='../03/icons/".$row['icon']."' align='absbottom' alt='' border='0' /></a>&nbsp;&nbsp;&nbsp;
    <a href='"
    .$row['http4']."' target='_self'>".$row['name']."</a></td>
            <td width='6'></td>
            <td>'"
    .$row['res']."'</td>
            <td width='6'></td>
            <td>'"
    .$row['size']."'</td>
            <td width='6'></td>
            <td>'"
    .$row['count']."'</td>
            <td width='6'></td>
            <td>'"
    .$row['date']."'</td>
        </tr>"
    ;
        
     
        }
        if( !
    is_null($tmp) ) {
        }
        
        echo 
    "</table>";

    ?>
    Geändert von asdfg (05.03.06 um 09:04 Uhr)
     

  6. #6
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Ohne entsprechende Tabelle/Daten ist es schwer nachzuvollziehen, was genau nicht funktioniert und woran dies liegen könnte. Ein paar mehr Informationen über den vermeintlichen Fehler wäre also hilfreich.
     
    Markus Wulftange

  7. #7
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.806
    Blog-Einträge
    5
    Code php:
    1
    2
    3
    4
    
    echo "
     
    <tr class='.$row_class.'><td width='5'></td>
    
    Hast du dir schon mal den ausgegebenen HTML-Quellcode angesehen? Anscheinend nicht, denn sonst wäre dir sofort aufgefallen, dass hier <tr class='.roweven.'> ausgegeben wird anstatt <tr class='roweven'>.
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  8. #8
    Avatar von Irgendjemand_1
    Irgendjemand_1 Irgendjemand_1 ist offline Mitglied Platin
    Registriert seit
    Aug 2005
    Beiträge
    656
    Zitat Zitat von Matthias Reitinger
    Code php:
    1
    2
    3
    4
    
    echo "
     
    <tr class='.$row_class.'><td width='5'></td>
    
    Hast du dir schon mal den ausgegebenen HTML-Quellcode angesehen? Anscheinend nicht, denn sonst wäre dir sofort aufgefallen, dass hier <tr class='.roweven.'> ausgegeben wird anstatt <tr class='roweven'>.
    Beheben tut man das natürlich, indem man ".$row_class." schreibt ...
     
    Just because you're paranoid, don't mean they're not after you.
    Kurt Cobain


    Experiment: Kohlkopf

  9. #9
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.806
    Blog-Einträge
    5
    Diese Überlegung hätte ich jetzt gern unter dem Stichwort „Eigeninitiative“ dem Originalposter überlassen
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  10. #10
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Sehr aufmerksam, aber selber zu dieser Zeit leider nicht mehr so aktiv.
    Nun hat mich hier jemand falsch verstanden, denn ich möchte:

    Zitat Zitat von asdfg
    Wie kriege ich das hien, wenn ich eine SQL Abfrage ausführe, und die Daten in eine Tabelle schreibe, dass die 1 Zeile grau wird und die 2 Zeile weiss und die 3 Zeile grau etc...?
    Nun ist hier aber ein ganzer Abschnitt grau/weiss/grau.
    Geändert von asdfg (05.03.06 um 09:04 Uhr)
     

  11. #11
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Dann nimm den Algorithmus zur Wahl der alternierenden Klasse eben aus der if-Kontrollstruktur. Etwas Eigeninitiative …
     
    Markus Wulftange

  12. #12
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Sorry, was ist ein "Algorithmus"?
     

  13. #13
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Schlag das Wort doch einfach im Lexikon nach:
    Zitat Zitat von [url=http://de.wikipedia.org/wiki/Algorithmus]Wikipedia – Algorithmus[/url]
    Unter einem Algorithmus versteht man allgemein eine genau definierte Handlungsvorschrift zur Lösung eines Problems oder einer bestimmten Art von Problemen.
     
    Markus Wulftange

  14. #14
    asdfg asdfg ist offline Mitglied Bronze
    Registriert seit
    Mar 2004
    Beiträge
    45
    Aber dann ist das Thema nicht beantwortet bzw. erledigt!
    Natürlich währe eine Erklärung in Bezug auf diese Thema Voraussetzung gewesen!
    Geändert von asdfg (05.03.06 um 09:44 Uhr)
     

  15. #15
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Ist das wirklich so schwer?
    PHP-Code:
    <?php

        
    include './lab/config.php';

        
    $row_classes = array(
            
    'roweven',
            
    'rowodd',
        );

        
    $query '
            SELECT
                    *
              FROM
                    `fi`
              WHERE
                    `cat` = "'
    .mysql_real_escape_string($_GET['cat']).'"
              ORDER BY
                    '
    .mysql_real_escape_string($_GET['sort']).' '.mysql_real_escape_string($_GET['go']).'
            '
    ;
        
    $result mysql_query($query);
        
    $tmp null;
        
    $row_num 0;
        while( 
    $row mysql_fetch_array($resultMYSQL_ASSOC) ) {
            
    $row_class = ++$row_num == 'roweven' 'rowodd';
            if( 
    $tmp != $row[$sort] ) {
                echo 
    '<table border="0" width="688" width="95%" cellspacing="0" cellpadding="0">';
                echo 
    '<tr bgcolor="D9D9D9"><td colspan="10">'.$row[$sort].'</td></tr>';
                
    $tmp $row[$sort];
            }
            echo 
    '<tr class="'.$row_class.'"><td width="5"></td>
    <td><a href="'
    .$row['http4'].'" target="_self"><img src="../03/icons/'.$row['icon'].'" align="absbottom" alt="" border="0" /></a>&nbsp;&nbsp;&nbsp;
    <a href="'
    .$row['http4'].'" target="_self">'.$row['name'].'</a></td>
            <td width="6"></td>
            <td>'
    .$row['res'].'</td>
            <td width="6"></td>
            <td>'
    .$row['size'].'</td>
            <td width="6"></td>
            <td>'
    .$row['count'].'</td>
            <td width="6"></td>
            <td>'
    .$row['date'].'</td>
        </tr>'
    ;
        }
        echo 
    '</table>';

    ?>
    Übrigens solltest du Tabellen nicht als Layout-Mittel missbrauchen.
     
    Markus Wulftange

Ähnliche Themen

  1. 50 % Grau ist nicht 50 % Grau
    Von nanda im Forum Photoshop
    Antworten: 3
    Letzter Beitrag: 23.04.08, 22:07
  2. Navigation: Weiss - Grau - Schwarz
    Von Comenius im Forum Flash Plattform
    Antworten: 4
    Letzter Beitrag: 30.11.05, 22:14
  3. Ebene grau
    Von schnarnd im Forum Cinema 4D
    Antworten: 6
    Letzter Beitrag: 21.06.04, 22:42
  4. Grau färben
    Von tomi im Forum Photoshop
    Antworten: 3
    Letzter Beitrag: 05.07.02, 11:20