Mysql
 sql >> Datenbank >  >> RDS >> Mysql

php - Wie füge ich HTML-Tabellendaten in MySQL ein?

Da die Tabelle dynamisch gefüllt wird, müssen Sie als Namensattribut ein Array verwenden

<table>
        <tr>
            <th>Name</th>
            <th>Present</th>
            <th>Excused</th>
            <th>Unexcused</th>
            <th>Ext</th>
        </tr>
        <?php         
        $query = "select * from TbCard";
        $sql = mysqli_query($connect, $query);
        $count = 0;
            while ($data = mysqli_fetch_array($sql)) {
        ?>
                <tr>
                <td>
                    <input name="tableRow[<?php echo $count; ?>]['dataName']" id='name' type='text' value="<?php echo $data['Name'];?>" readonly style='border:none;width:350px'></input>
                </td>
                <td>
                    <input name="tableRow[<?php echo $count; ?>]['status']" type="radio" value="Present"> Present
                </td>
                <td>
                    <input name="tableRow[<?php echo $count; ?>]['status']" type="radio" value="Excused"> Excused
                </td>
                <td>
                    <input name="tableRow[<?php echo $count; ?>]['status']" type="radio" value="Unexcused"> Unexcused
                </td>
                </tr>;
        <?php
             $count++;
            }
        ?>
    </table>

Die php wäre etwa so, unter der Annahme, dass die Daten Werte enthalten

$tableRow = $_POST['tableRow'];
foreach($tableRow as $row){
    echo $row['dataName'].' '.$row['status'].'<br/>';
}

Das sollte die von Ihnen gewählten Werte pro Zeile in der Tabelle anzeigen, ich verwende mysqli nicht Daher werde ich die Funktionen zum Einfügen in die Datenbank nicht bereitstellen, aber das Wichtigste ist, dass Sie jetzt die erforderlichen Daten haben

Um den Inhalt des Arrays anzuzeigen, verwenden Sie print_r($tableRow)

HINWEIS: Ich habe das echo entfernt Teil der Tabelle habe ich möglicherweise einige Anführungszeichen oder Tippfehler übersehen, kommentieren Sie einfach zur Klarstellung