首页 > 解决方案 > 从结果php中多次保存

问题描述

这种形式将存储相同的数据量的结果

 <form method="post" action="multi_insert.php">

  <input type="text" name="nis" placeholder="NIS"/>
  <input type="text" name="nama" placeholder="Nama"/>
    <input type="number" name="result" >

  <br/>

  <input type="submit" value="Post"/>
 </form>

“这是保存名称的源代码multi_insert.php

include "koneksi.php";

for($i=0;$i<$_POST['result'];$i++){
 $nis = $_POST['nis'.$i];
 $nama= $_POST['nama'.$i];
 $query = "insert into SISWA(NIS,NAMA)values('$nis','$nama')";
 $mysqli->query($query);
}
$mysqli->close();

还有这个connectiondb或koneksi.php

$host = "localhost";
$username = "root";
$password = "";
$db_name = "SEKOLAH";
$mysqli = new mysqli($host, $username, $password, $db_name);
if(mysqli_connect_errno()) {
echo "Error: Could not connect to database.";
exit;

标签: javascriptphpjquery

解决方案


<form method="post" action="multi_insert.php">

  <input type="text" name="nis" placeholder="NIS"/>
  <input type="text" name="nama" placeholder="Nama"/>
    <input type="number" name="result" >

  <br/>

  <button type="submit" >submit</button>
 </form>

if($_POST['nis'] && $_POST['nama']) {
    $nis = $_POST['nis'];
    $nama= $_POST['nama'];
    $query = "insert into SISWA(NIS,NAMA)values('$nis','$nama')";
    $mysqli->query($query);
}
$mysqli->close();

如果您需要保存多个具有相同名称的输入值,您应该使用

<input name="nama[]" />
<input name="nama[]" />
<input name="nama[]" />

代替

<input name="nama" />
并且值 $_POST['nama'] 将是一个数组

if($_POST['nama']) {
    foreach($_POST['nama'] as $i => $v) {
        $query = "insert into SISWA(NAMA)values('$v')";
        $mysqli->query($query);
    }
}
$mysqli->close();

推荐阅读