1

多年来,我一直使用 mySQL。大错。PDO 绝对是要走的路,我已经学会了艰难的道路。

但我还不太明白,也没有发现这些教程特别有用。

安全性和速度是我使用 mySQL 的主要问题。如果我想说从那里获取信息,标准 PDO 公式会是什么样子

$variable1 - SQL TABLE
$variable2 - FIELD TO MATCH
$variable3 - MATCH WITH THIS

然后假设在每个找到的行中有给定数量的字段,一旦找到它大概看起来像$row['field_name'];

如果我能根据这个例子看到这是如何完成的,我想我可能可以管理其余的部分。

此外,如果您知道 w3schools 对 mySQL 查询但对 PDO 所做的事情的良好链接,那么我也将不胜感激。

4

1 回答 1

2

完全记录,它看起来像这样:

<?php

try {
//Start connection
    $pdo = new PDO("mysql:host=localhost;dbname=database_name", "user", "password");
/*
* Set attributes
*/
//Throw exceptions on errors
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//Disable prepared statements emulations
    $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

    $table_name = "example_table";
    $field = "example_field";
    $value = "example_value";

    $query = <<<MySQL
    SELECT *
        FROM `$table_name`
        WHERE `$field` = :value
MySQL;

//Prepare the statement
    $stmt = $pdo->prepare($query);

//Bind values to placeholders
    $stmt->bindValue(":value", $value);

//Execute the statement
    $stmt->execute();

/*
* Fetching results
*/
//Fetch all results as an associative array.
    $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
} catch (PDOException $e) {
    die("An error has occurred! " . $e->getMessage());
}
于 2012-06-30T09:00:58.593 回答