我试图使用PHP和&amp ;;创建一个适用于任何数据库的插入功能。 MySQL" PDO连接"但它没有工作..这是代码
<?php
require_once "PDO-Connection.php";
function insert ($table, $column, $value)
{
$data = array ();
foreach($data as $column => $value)
{
$sql = "INSERT INTO $table ($column) VALUES (:$column)";
$stmt = $pdo->prepare($sql);
$stmt -> execute (array(':$column' => '$value'));
}
}
调用此函数
insert ('accounts', 'fname', 'ahmed');
我有(帐户)表&amp; (fname)字段
先谢谢
答案 0 :(得分:0)
如果您要使用foreach,则需要将数组发送到该函数中。 Foreach专门用于迭代数组。如果在函数中创建一个空数组,它将迭代零次。
<?php
require_once "PDO-Connection.php";
function insert ($table, $data, $pdo)
{
foreach($data as $column => $value)
{
$sql = "INSERT INTO {$table} ({$column}) VALUES (:{$column});";
$stmt = $pdo->prepare($sql);
$stmt->execute(array(':'.$column => $value));
}
}
$table = "accounts";
$data = array("fname" => "ahmed");
insert($table, $data, $pdo);
要更加健全地解决此问题,请查看this question and answer。