我有一个数组如下:
Array ( [item-name] => SM58
[make] => Shure
[model] => SM58
[qty] => 5
[status] => Available
)
我想将其更改为数据库查询,例如:
INSERT INTO `Inventory`(`item-name`, `make`, `model`, `qty`, `status`) VALUES ('SM58','Shure','SM58','5',[Available])
我无法理解我是如何实现它的。
答案 0 :(得分:3)
您可以使用PDO:
$stmt = $PDOinstance->prepare("
INSERT INTO `Inventory` (`item-name`, `make`, `model`, `qty`, `status`)
VALUES (:item-name, :make, :model, :qty, :status)
");
$stmt->execute($yourArray);
答案 1 :(得分:-1)
试试这个
foreach($array as $index => $value){
$fields .= "`".$index."`".",";
$values .= "'".mysql_real_escape_string($value)."'".","; //This escapes for mysql
}
$fields = rtrim($fields,",");
$values = rtrim($values,',');
$sql = "INSERT INTO `Inventory`($fields) VALUES ($values)";
但是,由于mysql_ *函数已被折旧,因此最好将上述帖子与PDO和预处理语句一起使用,或者您可以将mysqli_ *函数与准备好的语句一起使用。以下是两个资源的链接。
PDO:http://www.php.net/manual/en/book.pdo.php MySQLI:http://uk1.php.net/mysqli