使用php和jQuery将多个数组值放入数据库

时间:2014-04-01 16:51:59

标签: php jquery mysql arrays

我有多维数组,我想放入数据库。每当我插入数组时,只会插入其中一个。

这是我的PHP代码

$itemsselected = $_GET['chkvalues'];
$total = $_GET['total'];
// check if the parameters are set
if(isset($itemsselected) && isset($total)){
  $ducketNumber = mt_rand(100000,999999);
  $values['TotalAmount'] = $total;
  $values['DucketNumber'] = $ducketNumber;
  foreach((array)$itemsselected as $key => $item){
    list($id,$itemName,$itemQty,$itemPrice,$subtotal) = explode("/",$item);
    //**********  Insert a record into another table  ************
    $sql = "INSERT INTO customerorderdetails(docketNumber, itemOrdered, Quantity, UnitPrice,totalAmount, CreatedBy) values ('$ducketNumber', '$itemName', '$itemQty','$itemPrice','$subtotal','$user')";
    CustomQuery($sql);          
  }
}

我的HTML

<table id='orderTable'>
  <thead>
    <tr>
      <td>Name</td>
      <td>Qty</td>
      <td>Price</td>
      <td>SubTotal</td>
    </tr>
  </thead>
  <tbody>
    <tr id='item'>
      <td><input type='hidden' class='name' value='pencil' />pencil</td>
      <td><input type='hidden' class='qty' value='2' />2</td>
      <td><input type='hidden' class='price' value='10' />10</td>
      <td><input type='hidden' class='subtotal' value='20' />20</td>
    </tr>
    <tr id='item'>
      <td><input type='hidden' class='name' value='pen' />pen</td>
      <td><input type='hidden' class='qty' value='3' />3</td>
      <td><input type='hidden' class='price' value='15' />15</td>
      <td><input type='hidden' class='subtotal' value='45' />45</td>
    </tr>
    <tr id='item'>
      <td><input type='hidden' class='name' value='ruler' />ruler</td>
      <td><input type='hidden' class='qty' value='1' />1</td>
      <td><input type='hidden' class='price' value='20' />20</td>
      <td><input type='hidden' class='subtotal' value='20' />20</td>
    </tr>
  </tbody>
  <p>
    <label>total</label>
    <input type='text' name='total' id='cart_total' value='' />
    <input type='button' name='btn' id='btn' />

总计小计, 这是我的jQuery

var itemArr =[];
var total = $('#cart_total').val();
//alert(total);
// get the order placed
$('#orderTable tbody tr.item').each(function(){
  var order_item_name = $(this).find('.name').val();
  var order_item_qty = $(this).find('.qty').val();
  var order_item_price = $(this).find('.price').val();
  var order_item_subtotal = $(this).find('.subtotal').val();
  //order_item_subtotal.val(order_item_qty * order_item_price);
  var itemselected = order_item_id+"/"+order_item_name+"/"+order_item_qty+"/"+order_item_price+"/"+order_item_subtotal;
  if(itemselected !== undefined && itemselected !== null){
    //itemArr.push(JSON.stringify(itemselected));
    itemArr.push(itemselected);
  }
});
itemArr.join(',');
alert(itemArr);
alert(itemArr.length);
document.location.href = "customerorder_add.php?chkvalues="+itemArr+"&total="+total;

我做错了什么?需要助手。

提前致谢

1 个答案:

答案 0 :(得分:0)

首先要做的事情:我认为你有问题。和你代码中的#。 在jquery中,“。”用于类,#是用于id

在你的HTML中:我假设你应该把这些称为“类”,而不是“id”;另外:“id”如果它真的是你想要写的,那么总是是唯一的。