Ankündigung

Einklappen
Keine Ankündigung bisher.

Tabellenzeile von Tabelle einer MySQL-Abfrage soll bestimmte Class haben

Einklappen

Neue Werbung 2019

Einklappen
Dieses Thema ist geschlossen.
X
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Tabellenzeile von Tabelle einer MySQL-Abfrage soll bestimmte Class haben

    Hallo liebe Forum-User,

    ich möchte in einer Tabelle, in der Datensätze aus MySQL abgefragt werden, je nach "Status", eine bestimmte class der <tr> verwenden.

    Beispiel:

    Wenn der Status "Ausstehend" ist soll die Zeile des Datensatzes die class "warning" besitzen.
    Wenn der Status "Angenommen" ist soll die Zeile des Datensatzes die class "success" besitzen.
    Und wenn der Status "Abgelehnt" ist soll die Zeile des Datensatzes die class "danger" besitzen.

    Mein bisheriger Code :

    PHP-Code:
    <?php
     error_reporting
    (-1);
    ini_set('display_errors'true);

    include 
    'link.php';
    $sqli "SELECT `id`, `name`, `username`, `email`, `rang`, `datum`, `status` FROM `Bewerbungen` ";
    $status "SELECT `status` FROM `Bewerbungen` ";

    if (
    $status "Abgelehnt") {
        
    $class "danger";
    } elseif (
    $status "Angenommen") {
        
    $class "success";
    } else {
        
    $class "warning";
    }

    if (
    $result mysqli_query($link$sqli)) {  
        echo 
    '<table align="center"  class="table table-striped table-hover ">';
                echo 
    '<thead>';
                echo 
    '<tr>';
                    echo 
    '<td class="td4">ID</td>';
                    echo 
    '<td class="td">Username</td>';
                    echo 
    '<td class="td2">Name</td>';
                    echo 
    '<td class="td2">Rang</td>';
                    echo 
    '<td class="td3">Beworben am</td>';
                    echo 
    '<td class="td5">Details</td>';
                    echo 
    '<td class="td5">Status</td>';
                    echo 
    '<td class="td4">Löschen</td>';
                  echo 
    '</tr>';
            while(
    $fetch mysqli_fetch_assoc($result)) {
                echo 
    '<tbody>';
                echo 
    '<tr class="' $class '">';
                    echo 
    '<td>' $fetch['id'] . '</td>';
                    echo 
    '<td>' $fetch['username'] . '</td>';
                    echo 
    '<td>' $fetch['name'] . '</td>';
                    echo 
    '<td>' $fetch['rang'] . '</td>';
                    echo 
    '<td>' $fetch['datum'] . '</td>';
                    echo 
    '<td><form  class="status" action="details.php" method="post">
                                <input type="hidden" name="id" value="' 
    $fetch['id'] .'" />
                                <input style="cursor:hand" class="button" type="submit" value="Details" />
                                </form></td>'
    ;
                    echo 
    '<td>' $fetch['status'] . '</td>';
                    echo 
    '<td><form  class="status" action="delete.php" method="post">
                                <input type="hidden" name="id" value="' 
    $fetch['id'] .'" />
                                <input style="cursor:hand" class="button" type="submit" value="Löschen" />
                                </form></td>'
    ;

                echo 
    '</tr>';
            }
        echo 
    '</table>';
    }else{   
        
    printf("Errormessage: %s\n"mysqli_error($link));
    }
    ?>

  • #2
    Vorneweg, du solltest dir dringend das EVA Prinzip anschauen. https://php-de.github.io/jumpto/eva-prinzip/

    Außerdem verstehe ich nicht warum du 2 Queries benutzt, status fragst du doch auch schon in der ersten ab?! Selbst wenn müsstest du die Query dann aber auch noch abschicken, das passiert mit status aber nicht, deshalb wird wohl jedes mal "warning" rauskommen.

    Kommentar


    • #3
      Was muss ich dann bei
      PHP-Code:
      if (isset($_POST['status'])) {
        
      $status $_POST['status'];

      schreiben da POST mit ja nichts bringt?

      Kommentar


      • #4
        Dieses Codefragment taucht oben bei dir nicht auf.
        Du musst für jede Bewerbung aus der Datenbank den Status prüfen und dann entsprechend in $class schreiben.

        Kommentar


        • #5
          Dieses Codefragment habe ich ja erst hinzugefügt da es so auf der Seite des EVA-Prinzips gezeigt wird. Aber ich muss ja etwas anderes als POST verwenden oder ?

          Kommentar


          • #6
            Dir mangelt es anscheinend massiv an Grundlagen, die zu lernen kannst nur du allein und dafür ist ein Forum der falsche Ort.
            https://php-de.github.io/jumpto/grun...#php-anfaenger

            Kommentar


            • #7
              http://phpforum.de/forum/showthread.php?t=284288

              Kommentar


              • #8
                https://www.php.de/articles/regeln-u...renrichtlinien -> "Anmerkung zu Multipostings"

                MOD: Geschlossen
                The string "()()" is not palindrom but the String "())(" is.

                Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                PHP.de Wissenssammlung | Kein Support per PN

                Kommentar

                Lädt...
                X