我发布的表单有很多相似的字段(artist1,artist2,.... artist20)。我试图将它们添加到数据库,但我不知道如何轻松获取所有发布的数据,而不必分别写出每个数据。如何将int组合成一个字符串,以便我不必写出每个字符串?这是我尝试过的一种方法:
for( $i=0; $i <= 20; $i++ )
{
$artist = $_POST['artist'.$i]
}
我也尝试过(没有用):
for( $i=0; $i <= 20; $i++ )
{
$art = 'artist' . $i;
$artist = $_POST[ $art ];
}
答案 0 :(得分:5)
您可以使用方括号命名HTML元素,PHP会将它们转换为数组:
<input type="text" name="artist[]" value="abc" />
<input type="text" name="artist[]" value="def" />
<input type="text" name="artist[]" value="ghi" />
<input type="text" name="artist[]" value="jkl" />
当你发帖时,这就是你在PHP中得到的:
print_r($_POST);
/* array(
artist => array(
0 => "abc",
1 => "def",
2 => "ghi",
3 => "jkl"
)
) */
...至于将它们放入数据库,请参阅此问题:insert two kinds of array in the same table