<?php # Nettuts Tutorial using PHP Data Objects (PDO),
/**This file contains the database access information
*This file also establishes a connection to mySQL
*and selects the database.
*Set the database access information as constants:
**/
// print_r(PDO::getAvailableDrivers());
DEFINE('DB_USER', 'root');
DEFINE('DB_PASSWORD', 'root');
DEFINE('DB_HOST', 'localhost');
DEFINE('DB_NAME', 'sitename');
$php = "htmlspecialchars";
try {
#MySQL with PDO_MYSQL
// $DBH = new PDO("mysql:host={$php(DB_HOST)}; dbname={$php(DB_NAME)}", root, root};
$DBH = new PDO("mysql:host=localhost; dbname= sitename", root, root);
$DBH->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
# UH-OH! Typed DELECT instead of SELECT!
$DBH->prepare('DELECT name FROM people');
} catch (PDOException $e) {
echo "I'm sorry, Dave. I'm afraid I can't do that.";
file_put_contents('PDOErrors.txt', $e->getMessage(), FILE_APPEND);
}
?>
。コンソールを呼び出し、[14-8月 - 2011年15時59分59秒] PHPのお知らせ:未定義の定数ルートの利用 - で 'ルート' を想定し/アプリケーション/データベースのMAMP/htdocs3/nettuts/PHP/PDO 行/ mysql_pdo_connect.phpの20行目にアクセスしてください。は、OS Xが戻る「で
ここで私は「googled」し、部分的な答えを見つけました。だから私はここで完成を望んでいた。
あなたはTIA
また、定数を補間するために '$ phpの= "はhtmlspecialchars"'回避策を使用しないでください。これは可能ですが、これが役に立つ特別なケースの1つではありません。あなたはPDO DSN init文字列を分割し、通常は定数を連結します: '= new PDO(" mysql:host = "。DB_HOST。" dbname = "。DB_NAME。"; ")' – mario