sql >> データベース >  >> RDS >> Mysql

php-HTMLテーブルデータをMySQLに挿入するにはどうすればよいですか

    テーブルは動的に入力されるため、名前属性として配列を使用する必要があります

    <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>
    

    php データに値が含まれていると仮定すると、次のようになります

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

    これにより、テーブルの行ごとに選択した値が表示されます。mysqliは使用しません したがって、データベースに挿入するための関数は提供しませんが、重要なのは、必要なデータが揃っていることです。

    配列の内容を確認するには、print_r($tableRow)を使用します

    注: echoを削除しました 表の一部では、引用やタイプミスを見逃している可能性があります。説明のためにコメントするだけです



    1. MySQLに列が存在する場合は、ALTERを使用して列を削除します

    2. 複数使用できますか?

    3. 5列から上位4列の合計を見つけるSQLクエリを作成するにはどうすればよいですか?

    4. PHPのSQLクエリ内で一重引用符を処理するにはどうすればよいですか?