2010-10-18 157 views
5

我有一个数组$ product_array,当我使用print_r($ product_array);.该阵列示出了类似这样的插入php数组到mysql

Array 
(
    [0] => Array 
     (
      [ID] => P00100 
      [NAME] => Edina 
      [PRICE] => $20.00 
     ) 

    [1] => Array 
     (
      [ID] => P00101 
      [NAME] => Richfield 
      [PRICE] => $21.00 
     ) 

    [2] => Array 
     (
      [ID] => P00102 
      [NAME] => Bloomington 
      [PRICE] => $22.00 
     ) 
) 

设置我的数据库表中4个columes,第一个是mainid,并且其是自动递增,以ID,NAME,PRICE以下,作为键的上方显示。 我想将这个数组$ product_array插入到mysql中。 任何人都可以帮忙吗?将非常感谢! tks。

回答

0

你可以试试这个代码(快速 'N' 脏):

foreach($product_array as $v) { 
    $query = 'insert into tablename values (null, \'' . $v['id'] . '\', \'' . $v['name'] . '\', ' . $v['price'] . ');' 
    mysql_query($query); 
} 
18
$sql = array(); 
    foreach($myarray as $row) { 
     $sql[] = '('.$row['ID'].', "'.mysql_real_escape_string($row['NAME']).'", 
"'.$row['PRICE'].'")'; 
    } 
    mysql_query('INSERT INTO table (ID, NAME,PRICE) VALUES '.implode(',', $sql)); 

看到更多的细节:

insert multiple rows via a php array into mysql

+1

纠正第一个'$行[ '价格'] ''为'$ row ['ID']'并得到回报作为奖励;) – teemitzitrone 2010-10-18 15:04:59

+0

谢谢@maggie,我看到它并改正它。 – 2010-10-18 15:09:04

+1

@HaimEvgi Haim,我认为你应该改变'mysql_real_query'功能,这在php中不可用。 – 2012-11-29 08:39:20