【发布时间】:2018-03-29 12:39:04
【问题描述】:
我正在做一个基本的 HTML 表单来询问人们:姓名、姓氏和喜欢的歌曲,我让它为 1 个人工作,但我希望人们可以同时输入几个人,例如 4 个人。
这是我的工作 HTML:
<form action='guarda.php' method='post' class="form-inline">
<div class="col-md-4 col-sm-4">
<div class="form-group">
<label for="name" class="sr-only">Name</label>
<input type="text" name="name" class="form-control" id="name" placeholder="Name" required>
</div>
</div>
<div class="col-md-4 col-sm-4">
<div class="form-group">
<label for="surname" class="sr-only">Surname</label>
<input type="text" name="surname" class="form-control" id="surname" placeholder="Surname" required>
</div>
</div>
<div class="col-md-4 col-sm-4">
<div class="form-group">
<label for="song" class="sr-only">Fav Song</label>
<input type="text" name="cancion[]" class="form-control" id="name" placeholder="Your fav Song">
</div>
</div>
<center>
<input type="submit" class="btn btn-default btn-block" value="Send" >
</center>
</form>
这是我的 PHP 文件:
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "root", "", "database");
// Check connection
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
// Escape user inputs for security
$name = mysqli_real_escape_string($link, $_REQUEST['name']);
$surname = mysqli_real_escape_string($link, $_REQUEST['surname']);
$song = mysqli_real_escape_string($link, $_REQUEST['song']);
// attempt insert query execution
$sql = "INSERT INTO table (name, surname, song) VALUES ('$name', '$surname', '$song')";
if(mysqli_query($link, $sql)){
echo "Records added successfully.";
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
// close connection
mysqli_close($link);
?>
现在我希望能够同时输入 4 个人,比如:
- 姓名、姓氏、宋
- 姓名、姓氏、宋
- 姓名、姓氏、宋
- 姓名、姓氏、宋
并将所有信息同时输入到数据库中。
我该怎么做?
谢谢
【问题讨论】:
-
使用数组样式的名称,格式为:
name="name[]"。那么$_POST['name']就是一个数组,你可以循环遍历它。 -
我不知道如何遍历数组以将信息发送到数据库表:(