Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

php - Como insiro dados da tabela HTML no MySQL


Como a tabela é preenchida dinamicamente, você precisa usar um array como atributo name
<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>

O php seria algo assim, supondo que os dados tenham valores nele
$tableRow = $_POST['tableRow'];
foreach($tableRow as $row){
    echo $row['dataName'].' '.$row['status'].'<br/>';
}

Isso deve mostrar os valores que você escolheu por linha na tabela, eu não uso mysqli então não vou fornecer as funções para inseri-lo no banco de dados, mas o importante é que agora você tem os dados necessários

Para ver o conteúdo do array, use print_r($tableRow)

OBSERVAÇÃO: Eu removi o echo parte da tabela, posso ter perdido algumas citações ou alguns erros de digitação, basta comentar para esclarecimentos