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 : Sélectionner tout - Visualiser dans une fenêtre à part
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.