+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 10 von 17

Thema: Tabellendarstellung aus Import von SQL

  1. #1
    Neu an Board Avatar von Torte260266
    Registriert seit
    28.02.2011
    Ort
    Weimar
    Beiträge
    45
    Bedankte sich
    17
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Rotes Gesicht Tabellendarstellung aus Import von SQL

    Hallo an Alle,

    ich habe eine Frage zur Darstellung meiner Tabelle. Ich habe es soweit hin bekommen, dass die Daten aus der Datenbank angezeigt werden und zwar so:
    <?php
    // Verbindung zur Datenbank herstellen
    require_once "dbconnect.php";

    // SQL-Anfrage: Ergebnis ist stets eine Tabelle
    $sql="SELECT * FROM `mitglieder`";

    // Anfrage ausführen
    $result=mysql_query($sql) or exit("Fehler im SQL-Kommando: $sql");

    // Tabelle in HTML darstellen
    echo "<table border=\"1\">\n";
    while ($row=mysql_fetch_row($result))
    {
    echo "<tr>";
    foreach ($row as $item) // jedes Element $item der Zeile $row durchlaufen
    echo "<td>$item</td>";
    echo "</tr>\n";
    }
    echo "</table>\n";
    ?>
    Wie bekomme ich es aber hin, dass:
    1.) die Schrift wies ist
    2.) das nur aus der Datenbank die Spalte 1,2,6,7,8,9,10 angezeigt werden.

    Ich muss dazu sagen, dass ich sehr wenig Ahnung mit php habe und wäre für eure Hilfe sehr dankbar.

    Gruß Thorsten

  2. #2
    Wohnt hier Avatar von cylance
    Registriert seit
    10.11.2010
    Beiträge
    2.313
    Bedankte sich
    189
    Erhielt 592 Danksagungen
    in 562 Beiträgen

    Standard

    1) class zuordnen und mit css stylen

    2) SQL Abfrage anders durchführen. Links zu SQL findest Du in meinem Profil auf der Pinwand.
    Meine Kristallkugel hat einen Sprung und die Tarotkarten hat's vom Tisch geweht. Detailierte Informationen sind hilfreich.
    We offer three kinds of service: good - chea p - fast. u can pick 2 of them
    FAQ vorn im Forum gelesen?

  3. #3
    Neu an Board Avatar von Torte260266
    Registriert seit
    28.02.2011
    Ort
    Weimar
    Beiträge
    45
    Bedankte sich
    17
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Danke für die Antwort, nur hilft sie mir so nicht weiter

  4. #4
    Neu an Board
    Registriert seit
    19.01.2007
    Ort
    85221 Dachau
    Beiträge
    14
    Bedankte sich
    0
    Erhielt 6 Danksagungen
    in 6 Beiträgen

    Standard

    Hallo Torte,

    Also die Schrift weiss zu machen ist wohl kein problem, sollte so klappen:

    PHP-Code:
    <?php
    // Verbindung zur Datenbank herstellen
    require_once "dbconnect.php";

    // SQL-Anfrage: Ergebnis ist stets eine Tabelle
    $sql="SELECT * FROM `mitglieder`";

    // Anfrage ausführen
    $result=mysql_query($sql) or exit("Fehler im SQL-Kommando: $sql");

    // Tabelle in HTML darstellen
    echo "<table border=\"1\"  >\n";
    while (
    $row=mysql_fetch_row($result))
    {
    echo 
    "<tr>";
    foreach (
    $row as $item// jedes Element $item der Zeile $row durchlaufen
    echo "<td style='color:#000000;'>$item</td>";
    echo 
    "</tr>\n";
    }
    echo 
    "</table>\n";
    ?>
    Generell ist der Stil deines Codes sehr gewoehnungsbeduerftig und hat sicher ne Menge Optimierungspotential ;-)

    Wenn du nur bestimmte Spalten anzeigen willst, dann musst du halt nur die selektieren. Unter Umstaenden kannst du dann noch mit der Funktion mysql_fetch_array() arbeiten anstelle mysql_fetch_row(). Ich empfehle dir deine Tabelle, wie sie spaeter aussehen auf der Webseite soll schon vorher in PHPMyAdmin oder einem anderen Datenbanktool so zu erstellen und dann in den PHP Code zu integrieren.

    also z.B.: Select cola, colb, colc ... from mitglieder

    in PHPMyAdmin kannst du dir aus einem Query direkt PHP-Code erzeugen lassen, dass hilft manchmal.
    Nico Becker

    Web: nicbec.de
    E-Mail: kontakt@nicbec.de

  5. Erhielt Danksagungen von:


  6. #5
    Neu an Board Avatar von Torte260266
    Registriert seit
    28.02.2011
    Ort
    Weimar
    Beiträge
    45
    Bedankte sich
    17
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Danke nicbec,

    ich habe es so gelöst:
    $sql="SELECT `Vorname`,`Name`,`Email`,`Geburtstag` FROM `mitglieder`"
    Aber ich verstehe den Unterschied nicht ganz zwischen "mysql_fetch_array() und mysql_fetch_row()".

    Und kannst du mir vielleicht nochmals helfen.
    1.)Wie bekomme ich einen Mousovereffect in die Tabellenzeile hin, das diese sich farblich Makiert.
    2.)Das die Zeilen mit ungerater Zahl gelb sind und die mit gerader Zahl rot.
    Also erste zeile Gelb, zweite Rot, dritte Gelb usw.

    Gruß Torte

  7. #6
    Neu an Board Avatar von Torte260266
    Registriert seit
    28.02.2011
    Ort
    Weimar
    Beiträge
    45
    Bedankte sich
    17
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Ich bin schon fast am verzeifeln,

    was mache ich bei onmouse effekt falsch?

    echo "<table border=\"0\">\n";
    while ($row=mysql_fetch_row($result))
    {
    echo "<tr onMouseover=this.style.backgroundColor='#ffffff',
    onMouseout=this.style.backgroundColor='#F7F7FF'>";
    foreach ($row as $item) // jedes Element $item der Zeile $row durchlaufen
    echo "<td>$item</td>";
    echo "</tr>\n";
    }
    echo "</table>\n";

    Der hintergrund wird weis wenn ich mit der Maus trüber fahre, nur der onMouseout effekt geht nicht.

    Kann mir einer helfen?

    Gruß Torte

  8. #7
    Neu an Board
    Registriert seit
    19.01.2007
    Ort
    85221 Dachau
    Beiträge
    14
    Bedankte sich
    0
    Erhielt 6 Danksagungen
    in 6 Beiträgen

    Standard

    Verwende für den Mouseovereffekt :hover Das sollte Problemlos funktionieren.
    Die unterschiedliche Farbe in jeder 2. Zeile sollte auch kein problem sein. Das lässt sich mit einem schnipsel PHP lösen. Ich kann dir den Code später hier reinschreiben.
    Nico Becker

    Web: nicbec.de
    E-Mail: kontakt@nicbec.de

  9. Erhielt Danksagungen von:


  10. #8
    Neu an Board Avatar von Torte260266
    Registriert seit
    28.02.2011
    Ort
    Weimar
    Beiträge
    45
    Bedankte sich
    17
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Hallo Nico, erstmal danke für deine Anregungen und Hinweise. Dadurch konnte ich mir teilweise helfen und nach begriffen suchen. Das onMouseover habe ich so gelöst.

    // Tabelle in HTML darstellen
    echo "<table border=\"0\">\n";
    while ($row=mysql_fetch_row($result))
    {
    echo "<tr onMouseover=this.style.backgroundColor='#990000'
    onMouseout=this.style.backgroundColor=''>";
    foreach ($row as $item) // jedes Element $item der Zeile $row durchlaufen
    echo "<td>$item</td>";
    echo "</tr>\n";
    }
    echo "</table>\n";

    Nur finde ich das es nicht sehr elegant aussieht, da ja durch die SQL abfrage dies wie mehrere Spalten erscheint und dadurch alles sehr abgehackt aussieht. Sieht das mit einer onMouseover und Blende durch Grafik besser aus??

    Gruß Thorsten

  11. #9
    Neu an Board
    Registriert seit
    19.01.2007
    Ort
    85221 Dachau
    Beiträge
    14
    Bedankte sich
    0
    Erhielt 6 Danksagungen
    in 6 Beiträgen

    Standard

    Hallo Torte,

    ich habe dienen Code mal ein wenig strukturiert ;-) und umgeschrieben, allerdings nicht getestet. Zumindest sollter der Code verdeutlichen wie du die Farbwechsel innerhalb der Tabelle machen koenntest. Desweiteren habe ich auch mal einen Tabellenkopf gebaut.

    PHP-Code:
    <?php
        
    // Verbindung zur Datenbank herstellen
        
    require_once "dbconnect.php";

        
    // SQL-Anfrage: Ergebnis ist stets eine Tabelle
        
    $sql="SELECT `Vorname`,`Name`,`Email`,`Geburtstag`  FROM `mitglieder`";

        
    // Anfrage ausführen
        
    $result=mysql_query($sql) or exit("Fehler im SQL-Kommando: $sql");

        
    // Tabelle in HTML darstellen
        
    $output .= "<table border='1'  >";
        
    $output .= "<td style='color:#000000;'><b>Vorname</b></td>";
        
    $output .= "<td style='color:#000000;'><b>Name<b></td>";
        
    $output .= "<td style='color:#000000;'><b>E-Mail<b></td>";
        
    $output .= "<td style='color:#000000;'><b>Geburtstag<b></td>";
        
        
    // Hier koennen die Farben definiert werden
        
    $color_a "#FFFF00";
        
    $color_b "#FF3300";
        
        
    $i 0;
        
        while (
    $arr=mysql_fetch_array($result))
            {
                
    // colorswitch
                
    if($i === 0) {$tbl_color $color_a$i 2; }
                elseif(
    $i === 2) { $tbl_color $color_b$i 0; }
                
                
    $output .= "<tr style='color:#000000;background-color:".$tbl_color.";'>";
                
    $output .= "<td style='color:#000000;'>".$arr[0]."</td>";
                
    $output .= "<td style='color:#000000;'>".$arr[1]."</td>";
                
    $output .= "<td style='color:#000000;'>".$arr[2]."</td>";
                
    $output .= "<td style='color:#000000;'>".$arr[3]."</td>";

                
    $output .= "</tr>";
            }
        
    $output .= "</table>\n";
        
        echo 
    $output;
    ?>
    Hast du evtl eine Testumgebung, irgendwo online, um das mal zu testen?

    Was sieht abgehakt aus?
    Nico Becker

    Web: nicbec.de
    E-Mail: kontakt@nicbec.de

  12. Erhielt Danksagungen von:


  13. #10
    Neu an Board Avatar von Torte260266
    Registriert seit
    28.02.2011
    Ort
    Weimar
    Beiträge
    45
    Bedankte sich
    17
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Hallo Nicbec, das ist genau das was ich wollte sieht super aus.

    Aber eine klein bitte hätte ich noch. Das Datumsformat bei Geburtstag wird so angezeigt 2001-05-10. Ich habe irgend wo schon gelesen das man das ändern kann das dies so aussieht 10.05.2001. Kannst du mir da noch helfen.

    Gruß Torte

+ Antworten
Seite 1 von 2 1 2 LetzteLetzte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein