2014-12-04 91 views
0

我只是混淆如何爆炸字符串插入到數據庫中單獨。爆炸,然後插入到表

我的代碼:

$mymotives = "Entrega de Documentos, Orientacion, Username y Password, Convalidacion";   
$ExplodeMotives = explode(", ", $mymotives); 
foreach ($ExplodeMotives as $value) { 
    $queryAdd = "INSERT INTO StuSelectCateg (attendedBy, personName, personLast, depName, categoryName, timeOut) 
       VALUES ('".$_SESSION["nomEmpleado"]. " " . $_SESSION["appEmpleado"]."', '".$_SESSION['estNombre']."', '".$_SESSION['estApellido']."', '".$_SESSION['concentracion']."', '$value', '$stuTOut')"; 
    mysqli_query($con, $queryAdd); 
} 

我希望我的輸出是在我的數據庫這樣的

Table | Category 
----------------------------- 
1  | Entrega de Documentos 
2  | Username y Password 
3  | Convalidacion 
+0

這只是dosent做我的數據庫中的任何輸出將是Entrega de Documentos,Orientacion,Username y Password,Convalidacion相同 – 2014-12-04 03:32:17

回答

0
<?php 
     $mymotives = "Entrega de Documentos, Orientacion, Username y Password, Convalidacion"; 
     $ExplodeMotives = explode(", ", $mymotives); 
     foreach ($ExplodeMotives as $value) 
     { 
      $queryAdd[] = "INSERT INTO StuSelectCateg (attendedBy, personName, personLast, depName, categoryName, timeOut) VALUES ('".$_SESSION["nomEmpleado"]. " " . $_SESSION["appEmpleado"]."', '".$_SESSION['estNombre']."', '".$_SESSION['estApellido']."', '".$_SESSION['concentracion']."', '$value', '$stuTOut')"; 
     } 
    mysqli_query($con, $queryAdd); 
?> 

你可以改變variabel queryAdd像一個波夫的數組。

+0

這將使我的數據像th在? – 2014-12-04 03:56:19

+0

我得到這個錯誤警告:mysqli_query()期望參數2是字符串,在第104行給出的C:\ xampp \ htdocs \ BackUP \ Empleados.php中的數組 – 2014-12-04 06:22:27

0

哇感謝上帝,我做到了我的自我由於無論哪種方式,即使壽這是錯誤的

$mymotives=$stuMotives; $ExplodeMotives = explode(", ", $mymotives); foreach ($ExplodeMotives as $value) { $queryAdd = "INSERT INTO StuSelectCateg (attendedBy, personName, personLast, depName, categoryName, timeOut) VALUES ('".$_SESSION["nomEmpleado"]. " " . $_SESSION["appEmpleado"]."', '$stuName', '$stuApell', '$stuDepart', '$value', '$stuTOut')"; mysqli_query($con, $queryAdd); }

+0

這很糟糕,因爲你可以做多個插入調用一切都在一個電話。 – a20 2016-08-25 09:56:44

0

回覆起步比較晚,但想指出的是,與其他解決方案,你會當你可以在一個sql查詢中完成所有插入操作時,創建與mysql的多個連接。下面使用我的解決方案

<?php 
     $string = "Entrega de Documentos, Orientacion, Username y Password, Convalidacion"; 
     $categories = explode(", ", $string); 

     $query = "INSERT INTO StuSelectCateg (attendedBy, personName, personLast, depName, categoryName, timeOut) VALUES "; 

     foreach ($ExplodeMotives as $value) 
     { 
      $query_vals[] = "('" 
          .$_SESSION["nomEmpleado"]. "', '" 
          .$_SESSION["appEmpleado"]."', '" 
          .$_SESSION['estNombre']."', '" 
          .$_SESSION['estApellido']."', '" 
          .$_SESSION['concentracion']."', '" 
          .$value."', '" 
          .$stuTOut. "')"; 
     } 
    $query = $query . implode(", ", $query_vals); 
    mysqli_query($con, $query); 
?> 

這將做一個查詢,如插入一個MySQL的插入通話中的所有行:

INSERT INTO tableName 
    (column1,column2,column3,column4) 
VALUES 
    ('value1' , 'value2', 'value3','value4'), 
    ('value1' , 'value2', 'value3','value4'), 
    ('value1' , 'value2', 'value3','value4'); 
0

取字符串數據和爆炸並存儲到數據庫

$str = "[email protected],[email protected],[email protected],[email protected]"; 
    $emails=explode(",",$str); 
    $key=1; 
    foreach($emails as $email){ 
    //echo $email.'<br>'; 
    $sql="INSERT INTO `block_simplenotify`(`id`,`email`) VALUES ('$key++','$email')"; 
    } 
+0

雖然這段代碼片段是受歡迎的,並且可能會提供一些幫助,但它會[如果它包含一個解釋](/ meta.stackexchange.com/q/114762)*如何*和*爲什麼*會大大改進問題。請記住,你正在爲將來的讀者回答這個問題,而不僅僅是現在問的人!請編輯您的答案以添加解釋,並指出適用的限制和假設。 – 2017-03-08 12:54:22