Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Konfigurirbare Tabelle

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Konfigurirbare Tabelle

    Hallo alle zusammen ich habe eine konfigurirbare Tabbelle geschrieben (die auf steine.txt zugreift). Ich hätte aber gerne, dass die Tabelle eine weitere Reihe bekommt wenn ich in der steine.txt mehr eintage.

    Vielen Dank

    Steine.txt:
    |bildtest|test0|test1|test2|test3

    PHPcode:
    PHP-Code:
    <?php
    $datei 
    file("steine.txt");

    foreach(
    $datei AS $ausgabe)
       {
       
    $zerlegen explode("|"$ausgabe);
    }
       
    ?>
    <html>
    <TABLE BORDER=1> 
       <TR> 
          <TD COLSPAN=5 ALIGN=CENTER> <FONT SIZE=+2>Tabbelle</FONT> 
          </TD> 
       </TR> 
       <TR> 
          <TH>Bild</TH> 
          <TH>Name</TH> 
          <TH>ID</TH> 
          <TH>Fach</TH> 
          <TH>Anzahl</TH> 
       </TR> 
       <TR> 
          <TH><IMG SRC="<?= $zerlegen[1?>.png" ALT="Grafik" BORDER=1></TH>
          <TD> <?= $zerlegen[2?></TD> 
          <TD><?= $zerlegen[3?></TD> 
          <TD><?= $zerlegen[4?></TD> 
          <TD><?= $zerlegen[5?></TD> 
       </TR> 
       <TR> 
          <TD><IMG SRC="<?= $zerlegen[6?>.png" ALT="Grafik" BORDER=1></TD> 
          <TD><?= $zerlegen[7?></TD> 
          <TD><?= $zerlegen[8?></TD> 
          <TD><?= $zerlegen[9?></TD> 
          <TD><?= $zerlegen[10?></TD> 
       </TR> 
    </TABLE>
    </html>


  • #2
    Dein Deutsch ist kaputt.
    Standards - Best Practices - AwesomePHP - Guideline für WebApps

    Kommentar


    • #3
      Mit file() liest du eine Datei in einen Array ein. ($datei)
      Mit foreach durchläufst du die einzelnen Zeilen dieses Arrays (du nennst diese Variable irritierender Weise $ausgabe statt $zeile).
      Innerhalb der Schleife musst du dann die einzelnen tr bauen und entweder direkt ausgeben oder in einer Variable zwischenspeichern.

      PS: Es ist so gedacht, dass in diesem Unter-Forum nur fortgeschrittene User posten

      Kommentar


      • #4
        Zitat von monolith Beitrag anzeigen
        Mit file() liest du eine Datei in einen Array ein. ($datei)
        Mit foreach durchläufst du die einzelnen Zeilen dieses Arrays (du nennst diese Variable irritierender Weise $ausgabe statt $zeile).
        Innerhalb der Schleife musst du dann die einzelnen tr bauen und entweder direkt ausgeben oder in einer Variable zwischenspeichern.

        PS: Es ist so gedacht, dass in diesem Unter-Forum nur fortgeschrittene User posten
        Könntest du mit vielleicht einmal ein Beispiel senden?

        Kommentar


        • #5
          Könntest du villeicht Grundlagen (http://www.php.de/php-einsteiger/489...nsammlung.html) lernen?

          -> Zum Thema fortgeschritten: http://www.php.de/php-fortgeschritte...uncements.html
          Gruß,
          SebTM

          Kommentar


          • #6
            Zitat von SebTM Beitrag anzeigen
            Könntest du villeicht Grundlagen (http://www.php.de/php-einsteiger/489...nsammlung.html) lernen?

            -> Zum Thema fortgeschritten: http://www.php.de/php-fortgeschritte...uncements.html
            Kann ich schon,ich habe es gerade Fertig geschrieben. Hab nur noch einen Fehler. (Unten makiert) Das Zeichen [ und ] sorgen immer für einen Error ich hoffe du kannst mir helfen. thx

            PHP-Code:
            <?php
                $zaehler 
            1;

                while (
            $zaehler <= 10)
                    {
                    echo 
            "";
                    
            $zaehler++;
                    }
            ?><?php
            $datei 
            file("steine.txt");

            foreach(
            $datei AS $ausgabe)
               {
               
            $zerlegen explode("|"$ausgabe);
               }
               
            ?>
            <html>
            <TABLE BORDER=1> 
               <TR> 
                  <TD COLSPAN=5 ALIGN=CENTER> <FONT SIZE=+2>Tabelle</FONT> 
                  </TD> 
               </TR> 
                
            <?php
            $a 
            $zerlegen/* Problem: [$zaehler]*/;

                
                while (
            $wiederholungen <= 10)
                {
                
            $wiederholungen++;
                echo 
            '<TR> <TH>'
                echo 
            $a
                echo 
            '</TH> <TH>'
                echo 
            $a
                echo 
            '</TH> <TH>'
                echo 
            $a;
                echo 
            '</TH> <TH>';
                echo 
            $a;
                echo 
            '</TH> <TH>';
                echo 
            $a;
                echo 
            '</TH> </TR>';
                }
                
            ?>

            Kommentar


            • #7
              Das du fortgeschritten bist kann ich mir NICHT vorstellen sonst hättest du die Frage so nicht gestellt wie Sie ist! Es wäre hier tatsächlich besser wenn du z.B. JSON oder so verwendest statt Textdateien.

              Ich verstehe die Darstellung deines Problems nicht, poste den Code so wie er den Fehler verursacht und die konkrete Fehlermeldung die die angezeigt wird! Desweiteren schau dir mal Tutorials über HTML5 und CSS(3) an dann wirst du sehen das das was du da machst Bullshit ist (z.B. Inline-CSS und Font-Tag | http://www.w3schools.com/tags/tag_font.asp).
              Gruß,
              SebTM

              Kommentar


              • #8
                Zitat von SebTM Beitrag anzeigen
                Das du fortgeschritten bist kann ich mir NICHT vorstellen sonst hättest du die Frage so nicht gestellt wie Sie ist! Es wäre hier tatsächlich besser wenn du z.B. JSON oder so verwendest statt Textdateien.

                Ich verstehe die Darstellung deines Problems nicht, poste den Code so wie er den Fehler verursacht und die konkrete Fehlermeldung die die angezeigt wird! Desweiteren schau dir mal Tutorials über HTML5 und CSS(3) an dann wirst du sehen das das was du da machst Bullshit ist (z.B. Inline-CSS und Font-Tag | http://www.w3schools.com/tags/tag_font.asp).
                Also die Datei steine.txt wird durchsuch. Als Ausgabe bekommt man "$zerlegen[1], $zerlegen[2], $zerlegen[3]..." . $a müsste eig."$zerlegen[1], $zerlegen[2], $zerlegen[3]..." entsprechen. Das ist mein Problem.

                Kommentar


                • #9
                  Mach doch mal nen var_dump($a) und var_dump($zerlegen)
                  Was soll das hier eigentlich?
                  PHP-Code:
                      $zaehler 1

                      while (
                  $zaehler <= 10
                          { 
                          echo 
                  ""
                          
                  $zaehler++; 
                          } 
                  Relax, you're doing fine.
                  RTFM | php.de Wissenssammlung | Datenbankindizes | Dateien in der DB?

                  Kommentar


                  • #10
                    Zitat von VPh Beitrag anzeigen
                    Mach doch mal nen var_dump($a) und var_dump($zerlegen)
                    Was soll das hier eigentlich?
                    PHP-Code:
                        $zaehler 1

                        while (
                    $zaehler <= 10
                            { 
                            echo 
                    ""
                            
                    $zaehler++; 
                            } 
                    Die Variable "$zaehler" wird immer höher (1,2,3,4...). $a muss eig. "$zerlegen[$zaehler]" entsprechen. Das bedeutet eig. nur: "$zerlegen[1], $zerlegen[2],$zerlegen[3]..." .

                    Kommentar


                    • #11
                      Du hast die Schleife an der falschen Stelle. Beim aktuellen Stand deines Codes, durchläufst du die Schleife gleich am Anfang 10 mal, wodurch $zaehler auf 10 gesetzt wird. Erst danach fängst du mit deinem Datei Dateizeugs an.
                      Auf den wichtigeren Hinweis bist du jetzt nicht eingegangen.
                      Relax, you're doing fine.
                      RTFM | php.de Wissenssammlung | Datenbankindizes | Dateien in der DB?

                      Kommentar


                      • #12
                        die Geschichte mit den Textdateien haste nicht zufällig von php-einfach.de?
                        Wie schon angemerkt, nimm JSON und schreib bitte keinen deutschen Code.

                        Ach btw sieh dir mal HTML5 an...
                        https://github.com/Ma27
                        Javascript Logic is funny:
                        [] + [] => "", [] + {} => object, {} + [] => 0, {} + {} => NaN

                        Kommentar


                        • #13
                          VPh ich hab den Code inzwischen schon geändert. sry ich hab völlig vergessen den neuen Code zu Posten hier ist er: (Klappt immer noch nicht )

                          PHP-Code:
                          <html>
                          <TABLE BORDER=1> 
                             <TR> 
                                <TD COLSPAN=5 ALIGN=CENTER> <FONT SIZE=+2>Tabelle</FONT> 
                                </TD> 
                             </TR> 
                              <?php
                              $a 
                          $zerlegen[$zaehler];
                              
                          $zaehler 1;

                              while (
                          $zaehler <= 10)
                                  {
                                  
                          $zaehler++;
                                   echo 
                          '<TR> <TH><IMG SRC="'
                                   echo 
                          $a
                                    
                          $zaehler++;
                                   echo 
                          '.png" ALT="Grafik" BORDER=1></TH> <TH>'
                                     echo 
                          $a
                                      
                          $zaehler++;
                                      echo 
                          '</TH> <TH>'
                                      echo 
                          $a;
                                       
                          $zaehler++;
                                      echo 
                          '</TH> <TH>';
                                   echo 
                          $a;
                                    
                          $zaehler++;
                                   echo 
                          '</TH> <TH>';
                                      echo 
                          $a;
                                      echo 
                          '</TH> </TR>';
                                  }
                          ?>
                          <?php
                          $datei 
                          file("steine.txt");

                          foreach(
                          $datei AS $ausgabe)
                             {
                             
                          $zerlegen explode("|"$ausgabe);
                             }

                          Kommentar


                          • #14
                            Ich will dir ja nicht die Freude an deiner Arbeit nehmen aber was zu teufel machst du da?!

                            * Lese die Datei via "file" aus und du erhälst ein Array mit den einzelnen Zeilen der Datei
                            PHP-Code:
                            $rows file('meineDatei.txt'); 
                            * Tabelle usw. ausgeben

                            * Starte innerhalb deiner Tabelle eine "for"-Schleife von null startend bis < count($rows)
                            PHP-Code:
                            for ($i 0$i count($rows); ++$i
                            * Splitte die Spalten der Zeile via "explode"
                            PHP-Code:
                            $row explode('|'$rows[$i]); 
                            * Öffne neue Tabellen-Zeile
                            PHP-Code:
                            <tr
                            * Prüfe ob Zählervariabele gleich "0" ist um nur in dieser Zeile "th"s zu nutzen (THs stehen für Tabellenüberschriften - vgl. http://www.mediaevent.de/xhtml/td.html) und wg. des anderen Layouts der Zeile
                            PHP-Code:
                            if ($i == 0) {
                             foreach (
                            $row as $item) {
                               echo 
                            '<th>' $item '</th>'
                             }

                            * Sonst behandle Zeile als normal
                            PHP-Code:
                            // Gehört zum drüberen if!
                            else {
                             for (
                            $j 0$j count($row); ++$j) {
                               switch(
                            $j) {
                                case 
                            1:
                                 
                            // Bild ausgeben
                                
                            break;
                                
                                case 
                            2:
                                  
                            // Tue was du willst mit Spalte 2!
                                
                            break;

                                  
                            // ...
                               
                            }
                             }

                            * TR-Schließen
                            * Tabelle schließen

                            Spaß haben!
                            Gruß,
                            SebTM

                            Kommentar


                            • #15
                              Zitat von SebTM Beitrag anzeigen
                              Ich will dir ja nicht die Freude an deiner Arbeit nehmen aber was zu teufel machst du da?!
                              Sorry, wenn ich auch noch mal in die Kerbe schlage, aber das ist an der Stelle in der Tat eine sehr gute Frage.

                              PHP-Code wird der Reihe nach von oben nach unten abgearbeitet.

                              PHP-Code:
                              echo $a;
                              $a 'Hallo'
                              Dieser Code wird nicht „Hallo“ ausgeben, weil $a erst in der Zeile nach der Ausgabe mit einem Wert belegt wird.

                              Da müsstest du (ImuustMINE) dir bitte dringend noch mal mehr Grundlagen ansehen, wenn es bei so was schon klemmt.

                              - http://php-de.github.io/jumpto/grundlagen-quellen/

                              Grundsätzlich zu unseren Ansprüchen an Fragesteller siehe diesen Thread:

                              - http://www.php.de/php-einsteiger/announcements.html

                              Das soll nicht heißen, dass du hier nicht posten darfst. Du solltest das aber etwas anders angehen, wenn du nicht ständig solche Hinweise lesen willst.

                              Kommentar

                              Lädt...
                              X