2013-08-23 269 views
-1

我希望能夠插入多個輸入字段,因爲它在數據庫中是自己的行。Ajax:在數據庫中插入多行

目前它將所有具有相同類的輸入字段插入到一行中的一個字段中。

阿賈克斯:

PHP
('#save').click(function() { 
     var accNum = $('.account').map(function() { 
         return this.value; 
         }).get(); 
     $.ajax({ 
      url: 'add-general-journal.php', 
      type: 'POST', 
      data: { 
       accNum : accNum, 
      } 
     }); 
    }); 

$values = implode("",$_POST[accNum]); 
    mysql_query("INSERT INTO generalHeader(accountNumber) VALUES('$values')") or die(mysql_error()); 
    echo "Success."; 

輸出顯示這樣的提交後:

enter image description here

是否有可能做到這一點在Ajax和PHP ?

+3

只想說,你不應該使用的mysql_query,特別是不與unsanitized輸入如直接從一個職位。這就是你如何獲得mysql注入攻擊。看看mysqli或PDO – DGS

+0

您能否詳細說明這一點:「希望能夠插入多個輸入字段,因爲它在數據庫中是自己的行。」你的聲明 – dreamweiver

+0

@DGS我可以很容易地通過Ajax和/或PHP來實現這一目標。我只需要找出如何將每個accNum插入表中,因爲它自己就是行...... – designtocode

回答

-1

$values = implode("','",$_POST['accNum']);將在每個數組項之間添加一個逗號和報價給你,這樣的INSERT將包含逗號分隔字符串

+0

This是不是我想要的... – designtocode

+0

然後請解釋你想在更清晰的問題想要 – DGS

+0

這是我想要的東西.. http://stackoverflow.com/questions/9796084/inserting-multiple-rows-into -mysql-with-one-insert-statement-using-php-implode -f – designtocode