使用PHP和&创建通用插入功能MySQL的

时间:2014-04-09 17:28:39

标签: php mysql pdo

我试图使用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)字段

先谢谢

1 个答案:

答案 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