2016-03-03 77 views
1

我有一个array这样的:无法导入阵列到数据库

Array ([0] => 123123123 [1] => Ognjen [2] => Babic) 
Array ([0] => 23423423 [1] => Neven [2] => Babic) 
Array ([0] => 235646345 [1] => Vanja [2] => Babic) 
Array ([0] => 4853424 [1] => Nikola [2] => Babic) 
Array ([0] => 34545747 [1] => Viktor [2] => Sovilj) 

我真的不知道如何将其导入到数据库mysql不使用预处理语句,因为我有一个严格的顺序不使用它。让我困惑的主要原因是我之前从未使用过这种类型的数组。请帮助

+0

做一个foreach循环再使用破灭功能,那么你为什么不能使用准备好的统计保存在数据库 –

+3

数据串对此语句? – Rizier123

+0

清理生成的查询的要求之一是什么?如果是这样,你可以回应,这是不可能的。 – apokryfos

回答

1

如果你不喜欢用准备好的语句,尝试生成insert语句在数组中的值,并通过一个或批处理执行它们一个

$upsert_query_str = ""; 
foreach($masterArray as $innerArray): 
    //construct the update/insert query and append it to the string 
    $upsert_query_str.="$$$$$$$$$$$$$"; 
endforeach; 

//Execute the statements 

OR

如果您喜欢根据特定的行存储所有的数据,使用json_encode()并存储它。提取时,使用json_decode(),你就会有它在你的掌握

希望它可以帮助...

0

考虑$ DataArr是你的主阵列和你的mysql_connect用做MySQL连接( $ DBHOST,$数据库用户名,$ DBPASSWORD)

$sql = "INSERT INTO table_name (column1, column2, column3) values ";

$valuesArr = array(); 
foreach($DataArr as $row){ 

    $column1 = $row[0]; // values 123123123, 23423423, 235646345, etc 
    $column2 = $row[1]; // values Ognjen, Neven, Vanja, etc 
    $column3 = $row[2]  // values Babic, Sovilj, etc.. 

    $valuesArr[] = "('$column1', '$column2', '$column3')"; 
} 

$sql .= implode(',', $valuesArr); 

mysql_query($sql) or exit(mysql_error()); `