我试图将数据插入一个名为 team 的表中。该表可容纳 4 个列。selection_id(主键)、player_name、位置和灯具 ID。
selection_id 的值为 auto_increment。我将球员姓名和位置添加到表格中。然而问题是,对于它从数组中提取的每个值,$playnames 和 $positions,selection_id 都会更新。像这样:
这不是我想要的。在 selection_id 更新之前,应该在表中存储 5 个名称(从而存储选择的团队) 。或者对于每个新的行,其中进行了新的团队选择,selection_id 必须相同。
我不知道如何解决这个问题。我考虑在插入数据后进行另一个查询以覆盖 selection_id 并使所有行(在本例中)等于 117。但我确信这不是最有效的方法。
如果有人能给我一些指示,将不胜感激。代码如下:
if ( isset($_POST['submit']) ) {
$player_ids = array_map('intval', $_REQUEST['players']);
var_dump($player_ids);
$query = 'SELECT `name`, `position`
FROM `player_info`
WHERE `player_id` IN (' . implode(',', $player_ids) . ')';
$return_names = mysql_query($query) or die(mysql_error());
while ( $row = mysql_fetch_assoc($return_names) ) {
$selected[] = $row['name'];
$position[] = $row['position'];
}
for ($i=0; sizeof($selected) > $i; $i++){
$sql = mysql_query("INSERT INTO `team`(`selection_id`,`player_position`,`player_name`) VALUES ('selection_id\"\"','$position[$i]','$selected[$i]')")
or die(mysql_error());
echo $selected[$i];
echo $position[$i];
echo'<br>';
}
var_dump($selected);
}