0

我试图将数据插入一个名为 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);
          }
4

0 回答 0