2016-03-10 3 views
-1

У меня есть 2 поля флажков, захватывающих данные из таблицы. Я хотел бы вставить их оба в таблицу. i, когда я вставляю один из них, но когда я пытаюсь вставить оба из них, я терпит неудачу.Вставьте 2 переменную php в таблицу mysql

Моя форма:

<form action="select_role_insert.php" method="post" > 
    <label>Supervisor</label> 
    <?php 

     $reqm = "SELECT manager_name FROM manager_name "; 
     $repm = mysqli_query($dbc, $reqm); 
     while ($rowm = mysqli_fetch_array($repm)) 
     { 
      $manager_name= $rowm['manager_name']; 
     ?> 

    <input type="checkbox" name="Supervisor[]"  
    value="<?php echo $manager_name?>" /> <?php echo $manager_name?><hr/> 
    <?php 
    } 
    ?> 

    <label>Speciality</label> 
    <?php 
     $req = "SELECT name FROM claims_follow_up.user_speciality"; 
     $rep = mysqli_query($dbc, $req); 
     while ($row = mysqli_fetch_array($rep)) {   
     $name = $row['name']; 
    ?> 
    <input type="checkbox" name="Speciality[]" 
     value="<?php echo $name?>" /> <?php echo $name ?><hr/> 
    <?php}?> 

select_role_insert.php - код, который вставить только одну переменную

 $Speciality = $_POST['Speciality']; 

    foreach($Speciality as $i => $Speciality) 
    { 
     $carGroups = mysqli_query($dbc,"INSERT INTO  
     client_services SET Speciality ='$Speciality '"); 
    } 

Пожалуйста, помогите мне вставить оба супервизора и специальные переменные .. Спасибо аванс

+0

Ваш код уязвим для SQL-инъекции. Пожалуйста, прочитайте [Как я могу предотвратить SQL-инъекцию в PHP?] (Http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php) для получения информации о том, как ее исправить , –

+0

Я исправляю эту проблему с SQL-инъекцией. Я просто не публикую его ... моей целью было вставить переменные. Просто чтобы упростить, я публикую его вот так. благодаря – baptpro

ответ

-1

Вот решение, если и он отлично работает. Спасибо за ваши советы

$Supervisor = $_POST['Supervisor']; 
$Speciality2 = $_POST['Speciality']; 

    $arraye = array_combine($Supervisor, $Speciality2); 
    foreach($arraye as $k=> $a){ 
$carGroups = mysqli_query($dbc,"INSERT INTO claims_follow_up.client_services SET supervisor='$k', service='$a'"); 
    } 
-1

Ваша форма:

<form action="select_role_insert.php" method="post" > 
<label>Supervisor</label> 
<?php 

    $reqm = "SELECT manager_name FROM manager_name "; 
    $repm = mysqli_query($dbc, $reqm); 
    while ($rowm = mysqli_fetch_array($repm)) 
    { 
     $manager_name= $rowm['manager_name']; 
    ?> 

<input type="checkbox" name="Supervisor[]"  
value="<?php echo $manager_name?>" /> <?php echo $manager_name?><hr/> 
<?php 
} 
?> 

<label>Speciality</label> 
<?php 
    $req = "SELECT name FROM claims_follow_up.user_speciality"; 
    $rep = mysqli_query($dbc, $req); 
    while ($row = mysqli_fetch_array($rep)) {   
    $name = $row['name']; 
?> 
<input type="checkbox" name="speciality_<?php echo $name?>" 
    value="<?php echo $name?>" /> <?php echo $name ?><hr/> 
<?php}?> 

select_role_insert.php - код, вставить все переменные, начинающиеся с специальности


$Speciality = $_POST; 

foreach($Speciality as $i => $Speciality) 
{ 
    if(substr($Speciality,0,10)=="speciality"){ 
     $carGroups = mysqli_query($dbc,"INSERT INTO  
     client_services (Speciality) VALUES ('$Speciality')"); 
    } 
} 
Смежные вопросы