【问题标题】:PDO connection / prepare and execute in a functionPDO 连接/准备并在函数中执行
【发布时间】:2013-02-07 19:32:13
【问题描述】:

我想我对下面的内容有点了解,我想做的是有一个 PDO 并在函数中调用准备和执行。

我试图在每个函数中使用 PDO 保存重复代码。

如果有人能指出我正确的方向,那将是非常好的和任何建议,我目前正试图从文章中弄清楚这一切。然后下面给我调用一个非对象的成员函数prepare()...

2 个附加问题

  1. 我是否应该尝试在函数中执行和准备,是 这种常见做法?
  2. 是否可以将 $db 放在函数中 并在需要时调用它,以便我可以将模具放回原处?

非常感谢任何帮助。

ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('log_errors', 1);

$config['db'] = array(
    'host' => 'localhost',
    'username' => 'root',
    'password' => 'root',
    'dbname' => 'bhill');
$db = new PDO('mysql:host=' . $config['db']['host'] . ';dbname=' . $config['db']['dbname'],
    $config['db']['username'], $config['db']['password']);
try {
    $db->exec("SET CHARACTER SET utf8");
    //$db = null;
}
catch (PDOException $ex) {
    print "Error!: " . $ex->getMessage() . "<br/>";
    die();
}

function update($db, $fn, $ln, $email, $offers, $vlue, $responce)
{
    $stmt = $db->prepare("insert into kkt (fName_765, lName_765, email_765, signup_765, kkt_resp_765, kkt_respSate_765, stamp_765) values (:fname, :lname, :email, :signup, :kkt_rsp, :kkt_respState, NOW())");
    $stmt->bindParam(':fname', $fn, PDO::PARAM_STR);
    $stmt->bindParam(':lname', $ln, PDO::PARAM_STR);
    $stmt->bindParam(':email', $email, PDO::PARAM_STR);
    $stmt->bindParam(':signup', $offers, PDO::PARAM_STR);
    $stmt->bindParam(':kkt_rsp', $vlue, PDO::PARAM_STR);
    $stmt->bindParam(':kkt_respState', $responce, PDO::PARAM_STR);
    $stmt->execute();
    $stmt = null;
}

$fn = 'test';
$ln = 'test';
$email = 'tesst@test,com';
$offers = '1';
$vlue = 'value';
$responce = 'resp';

update($db, $fn, $ln, $email, $offers, $vlue, $responce);

【问题讨论】:

    标签: php


    【解决方案1】:

    你正在做:

    $db = null;
    

    设置编码后。这基本上删除了实例。

    【讨论】:

    • 天哪,我一定是看得太久了,谢谢。现在我希望把它整理好,谢谢你的敏锐眼睛
    猜你喜欢
    • 2016-07-17
    • 2014-03-29
    • 2022-01-21
    • 2012-07-20
    • 1970-01-01
    • 2012-07-02
    • 2016-11-19
    • 2014-09-16
    相关资源
    最近更新 更多