Ankündigung

Einklappen
Keine Ankündigung bisher.

Table Schleife foreach

Einklappen

Neue Werbung 2019

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

  • Table Schleife foreach

    siehe Bild 1,

    in der ersten Spalte werden die Datensätze doppelt angezeigt und in der zweiten Spalte vierfach. Warum?

    Vorab, HTML, SQL usw. ist Old School!

    HTML-Code:
    <table>
      <?php
        if (count($daten_att)>0)  
        foreach ($daten_att AS $inhalt_att) {
    
        if (count($daten_fin)>0)  
        foreach ($daten_fin AS $inhalt_fin) {
        ?>    
    <tr>    
      <td style="width: 152px; background: #800000"><font color="#F8F8FF"><a data-toggle="modal" data-id="<?php echo $inhalt_att->address; ?>" data-toggle="modal"  class="open-MyModal" href="#myModal"><center><?php echo $inhalt_att->einheit; ?></center></a></td>
      <td style="background: orange; width: 35px; padding: 5px; padding-top: 2px; padding-bottom: 2px">
      <center><b><?php echo $inhalt_att->status; ?></b><br><span style="font-size: 7pt">14:21:05</span></center></td>
    
     <td style="width: 152px; background: #800000"><font color="#F8F8FF"><a data-toggle="modal" data-id="<?php echo $inhalt_fin->address; ?>" data-toggle="modal"  class="open-MyModal" href="#myModal"><center><?php echo $inhalt_fin->einheit; ?></center></a></td>
     <td style="background: orange; width: 35px; padding: 5px; padding-top: 2px; padding-bottom: 2px">
      <center><b><?php echo $inhalt_fin->status; ?></b><br><span style="font-size: 7pt">14:21:05</span></center></td>  
    
      <td><font color="black"></td>
    
        <?php
    
         } }
        ?>
    
    </table>
    Code:
    
    

  • #2
    Zitat von blackfire Beitrag anzeigen
    in der ersten Spalte werden die Datensätze doppelt angezeigt und in der zweiten Spalte vierfach. Warum?
    weil du die Schleifen verschachtelst, damit wird für jedes Element in $att $fin einmal durchlaufen. Ohne zu wissen was in $daten_att bzw. $daten_fin drinsteht und wie das Ergebnis aussehen soll lässt sich aber auch nicht sagen wie es richtig geht.

    Zitat von blackfire Beitrag anzeigen
    Vorab, HTML, SQL usw. ist Old School!
    Dann räum den Müll endlich auf! So gibt das nur einen unles- und -wartbaren Code-Müll! Und pt ist als Einheit für die Schriftgröße unbrauchbar und 7pt ohnehin viel zu klein.

    Kommentar


    • #3
      Die erste Spalte wird jetzt richtig angezeigt, was muss ich jetzt machen, dass die zweite Spalte auch richtig angezeigt wird.

      PHP-Code:
      <table>
        <?php
        
      if (count($daten_att)>0)
          foreach (
      $daten_att AS $inhalt_att) {      
         
      ?>     
        <tr>
        <td style="width: 152px; background: #800000"><font color="#F8F8FF"><a data-toggle="modal" data-id="<?php echo $inhalt_att->address?>" data-toggle="modal"  class="open-MyModal" href="#myModal"><center><?php echo $inhalt_att->einheit?></center></a></td>
        <td style="background: orange; width: 35px; padding: 5px; padding-top: 2px; padding-bottom: 2px">
        <center><b><?php echo $inhalt_att->status?></b><br><span style="font-size: 7pt">14:21:05</span></center></td>
      <?php ?>
      PHP-Code:
       $daten_att = array();
       
      $sql "SELECT * FROM tbl_einheiten_att ORDER BY address ";
       if (
      $erg $link->query($sql)) {
           if (
      $erg->num_rows) {
              
      $ds_gesamt $erg->num_rows;
              
      $erg->free();
          }
          if (
      $erg $link->query($sql)) {
              while (
      $datensatz $erg->fetch_object()) {
                  
      $daten_att[] = $datensatz;
              }
          }
      }

       
      $daten_fin = array();
       
      $sql "SELECT * FROM tbl_einheiten_fin ORDER BY address ";
       if (
      $erg $link->query($sql)) {
           if (
      $erg->num_rows) {
              
      $ds_gesamt $erg->num_rows;
              
      $erg->free();
          }
          if (
      $erg $link->query($sql)) {
              while (
      $datensatz $erg->fetch_object()) {
                  
      $daten_fin[] = $datensatz;
              }
          }

      Kommentar


      • #4
        Zitat von blackfire Beitrag anzeigen
        Die erste Spalte wird jetzt richtig angezeigt, was muss ich jetzt machen, dass die zweite Spalte auch richtig angezeigt wird.
        Vermutlich musst du die beiden Abfragen zu einer zusammenfassen - aber ohne Datenstruktur und gewünschtes Ergebnis zu kennen lässt sich da auch nicht mehr sagen.

        Außerdem: du hast jeweils zweimal »$erg = $link->query($sql)« als Bedingung verschachtelt was natürlich Unsinn ist; »SELECT *« ist böse[tm], gib immer an welche Spalten du möchtest; weitere Fragen/Postings die immernoch den HTML-Müll enthalten werde ich ignorieren.

        Kommentar


        • #5
          Zitat von tk1234 Beitrag anzeigen
          Vermutlich musst du die beiden Abfragen zu einer zusammenfassen - aber ohne Datenstruktur und gewünschtes Ergebnis zu kennen lässt sich da auch nicht mehr sagen.

          Außerdem: du hast jeweils zweimal »$erg = $link->query($sql)« als Bedingung verschachtelt was natürlich Unsinn ist; »SELECT *« ist böse[tm], gib immer an welche Spalten du möchtest; weitere Fragen/Postings die immernoch den HTML-Müll enthalten werde ich ignorieren.
          hallo tk1234,

          bin gerade dabei denn HTML-Müll zu nivellieren (siehe Bild)

          Sind die Fehlermeldungen und Warnungen aus der Boostrap CSS Datei normal?

          Kommentar

          Lädt...
          X