Mysql
 sql >> Base de données >  >> RDS >> Mysql

Erreur d'insertion PDO à l'exécution

Il semble que votre DSN soit incorrect (vous avez un espace dedans). Essayez ce constructeur PDO et arrêtez d'utiliser or die() !

$db = new PDO('mysql:host=localhost;dbname=xxxxxx;charset=utf8', 'yyyyyy', 'zzzzzz', array(
    PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
    PDO::ATTR_EMULATE_PREPARES   => false,
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC));

$query = "INSERT INTO multiTicker (mtgox,btcstamp,btce,btcchina,myDateTime) VALUES (:mtgox,:btcstamp,:btce,:btcchina,:myDateTime)";
$st = $db->prepare($query);
$st->execute(array(
    ':mtgox' => $mtgox,
    ':btcstamp' => $btcstamp,
    ':btce' => $btce,
    ':btcchina' => $btcchina,
    ':myDateTime' => $myDateTime
));

Vous n'êtes pas obligé de définir le mode de récupération par défaut sur PDO::FETCH_ASSOC mais je trouve que c'est pratique.