Php Использование флажка для извлечения нескольких столбцов из моего sql - PullRequest
1 голос
/ 03 мая 2020

В настоящее время я могу извлечь столбец с именем оборудования из моей таблицы и ввести его в свои av_events SQL. Но я хотел бы иметь возможность использовать столбец последовательных данных, чтобы добавить в столбец оборудования таблицы av_bookings, так как это уникальный идентификатор.

Здесь я делаю это, но я хотел бы иметь возможность сделать это только с одним флажком

Ценю любую помощь. Спасибо

<table>
<?php while ($av_inventory = mysqli_fetch_assoc($subject_set)) { ?>
    <tr>
      <td><?php echo h($av_inventory['equipment']); ?></td>
      <td><?php echo h($av_inventory['product']); ?></td>
      <td><?php echo h($av_inventory['serial']); ?></td>
      <td><?php echo h($av_inventory['current_location']); ?></td>
      <td><?php echo h($av_inventory['status']); ?></td>
      <td><input name='checkbox[]' type='checkbox' value="<?php echo $av_inventory['equipment'];?>">
          <input name='checkbox2[]' type='checkbox' value="<?php echo $av_inventory['serial'];?>"></td>
     </tr>
<?php } ?>
</table>

$equipArray = implode(', ', $_POST['checkbox']);
$implodeArray = implode(',', $_POST['checkbox2']);
$explodeArray = explode(',', $implodeArray);

$_SESSION['location'];
$_SESSION['logins'];

$sqllogin = "INSERT INTO av_events";
$sqllogin .= "(event_name, equipment, site, engineer_name, vp_present, date_time_from, date_time_to)";
$sqllogin .= " VALUES (";
$sqllogin .= "'". $eventName. "',";
$sqllogin .= "'". $equipArray. "',";
$sqllogin .= "'". $_SESSION['location']. "',";
$sqllogin .= "'". $_SESSION['logins']. "',";
$sqllogin .= "'". $vpPres. "',";
$sqllogin .= "'". $dateFrom. "',";
$sqllogin .= "'". $dateTo. "'";
$sqllogin .= ")";
$result = mysqli_query($db, $sqllogin);

foreach ($explodeArray as $serialNumber){
    $sqllogin = "INSERT INTO av_bookings";
    $sqllogin .= "(event_name, equipment, site, engineer_name, date_time_from, date_time_to)";
    $sqllogin .= " VALUES (";
    $sqllogin .= "'". $eventName. "',";
    $sqllogin .= "'". $serialNumber. "',";
    $sqllogin .= "'". $_SESSION['location']. "',";
    $sqllogin .= "'". $_SESSION['logins']. "',";
    $sqllogin .= "'". $dateFrom. "',";
    $sqllogin .= "'". $dateTo. "'";
    $sqllogin .= ")";
    $result = mysqli_query($db, $sqllogin);
}

1 Ответ

0 голосов
/ 05 мая 2020

Можно объединить информацию, а затем снова разделить ее. В качестве очень грубого ориентира:

<input name='checkbox[]' type='checkbox' value="<?php echo $av_inventory['equipment'],'|', $av_inventory['serial'];?>"></td>

Затем

$equipArray =[];
$explodeArray = [];
foreach ($_POST['checkbox'] as $combined) {
  $split = explode('|', $combined);
  $equipArray[] = $split[0];
  $explodeArray[] = $split[1];
}

Затем действуйте, как и прежде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...