Erreur avec liaison mysql
Bonjour,
je sollicite votre aide car j'ai un fichier dans lequel il y a une connection a mysql et qui ensuite lance une requete.
Ci dessous le code du fichier, appelons le toto.php.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
include "include/mysql-env.php";
try {
$dsn = "mysql:host=$dbhost;dbname=$db; dbuser=$dbuser, dbpassword =$dbpassword ";
$dbh = new PDO("mysql:host=127.0.0.1;dbname=$db", $dbuser, $dbpassword, array(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true));
} catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>DSN:$dsn";
die();
}
function getAddressId($fname, $lname,$email) {
global $dbh;
$qry = "SELECT id FROM address WHERE
fname = '$fname' AND
lname = '$lname' AND
email = '$email'";
$sth = $dbh->prepare($qry);
$sth->execute();
$row = $sth->fetch();
return($row["id"]);
} |
Le fichier est a la racine du site.
Si j'appelle le fichier par monsite.com/toto.php ca marche.
Etant donne que j'utilise wordpress, j'ai donc une page wordpress (disons test), qui via un plugin permettant d'inclure des fichiers php, inclus donc toto.php.
Maintenant si j'appelle monsite.com/test alors j'ai cette erreur:
PHP Fatal error: Uncaught Error: Call to a member function prepare() on null
Ce que je comprends d'autant moins est que l'inclusion de fichiers php est utilisee ailleurs dans le meme site et cela marche!!
Quelqu'un aurait il une idee?
D'avance merci.
Ps: desole pour les accents, j'ai un clavier anglais.