dynamische Tabelle mit php erzeugen?

5 Antworten

Hallo. Der Code oben hat leichte Fehler (schließende Klammer, Ausgabe von $zahl), aber nicht so schlimme. Für den "dynamischen" Aspekt sollte das Script ein Formular (method GET) enthalten, und das Script die Werte für $rows und $cols daraus entnehmen. ($_REQUEST oder so)

die reihen und spalten sollten sich oben in der leiste durch eingabe ändern lassen.

Du baust dir im primitivsten Fall ein Formular mit zwei Input Feldern und einem Abschicken button. Das "action" Attribut im "form" Tag ist dann das Script, welches die Tabelle erzeugt.

An die Daten im Formular kommst Du über die globale Variable $_POST, Der Schlüsselname ergibt sich aus dem "name" Attribut des Input Tag.

Lese dir bitte den Artikel dazu bei den "Machern" von php durch. Auch mit schönen einfachen Beispiel.

https://www.php.net/manual/de/tutorial.forms.php

Woher ich das weiß:Berufserfahrung – Web Developer bei einem mittelständischen Portalbetreiber

dir fehlt ein formular

und dann noch ein IF FORMULADATEN VORHANDEN DANN

drucke tabelle . die daten aus der form übernimmst du von deinen gesendeten formularfeldern ( $_GET["feldname"] oder $_POST["feldname"] )

und mach ein

<table border=1>

sonst sieht man nichts .

Du hast da einen Logikfehler. Erstelle eine Tabelle manuell in HTML, nach dem Schema

<table>
  <tr>
    <th></th>
    <th></th>
    <th></th>
  </tr>
</table>

Dann dürfte auch auffallen, dass deine erste For-Schleife keinen Sinn ergibt und du kannst davon ausgehend dir überlegen, wie du das in PHP systematisch erstellen kannst.

Woher ich das weiß:Studium / Ausbildung – Studium in theoretischer Informatik (Master)
dynamische Tabelle mit php erzeugen?

Was ist eine dynamische Tabelle?

Die zahlen sollten hochzählen und die reihen und spalten sollten sich oben in der leiste durch eingabe ändern lassen.

wie soll die Eingabe erfolgen?

Bisher habe ich das:

was Du hast, funktioniert nicht. Richtig wäre:

<table>
<?php
$rows = 10;
$cols = 20;
$zahl = 1;
for ($tr = 0; $tr < $rows; $tr++) {
    echo '<tr>';
    for ($td = 0; $td < $cols; $td++) {
        echo "<td>$zahl</td>";
        $zahl++;
    }
    echo '</tr>';
}
?>
</table>

Alex