Bonjour
Et merci encore beaucoup pour le retour et le explications, c'est vraiment gentil de répondre aussi vite et surtout prendre le temps de me répondre tout court !
Alors oui dans ma config j'ai bien le rapport d'erreur activé :
$dsn = 'mysql:dbname=monsite;host=localhost';
$user = 'root';
$password = '';
try {
$bdd = new PDO($dsn, $user, $password);
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo 'Échec lors de la connexion : ' . $e->getMessage();
}
Merci pour l'indication des guillemets, en effet je les ai complètement oublié.
Par contre j'ai tapé juste cela et j'ai un retour d'erreur :
$req = $bdd->prepare("SELECT * FROM utilisateurs WHERE direction = 'Direction des Opérations' AND token = ? ");
$req->execute();
$data = $req->fetch();
Le retour d'erreur :
fatal error: in C:\Users\seaotter\Documents\monsite\landing.php on line 146
( ! ) PDOException: in C:\Users\mauffrais\Documents\monsite\landing.php on line 146
Je ne peux pas ajouter de condition ELSE (enfin de crois) car je dois faire aller l'utilisateur sur une page selon sa direction
donc pour moi si j'ai 4 Directions je dois copié 4 fois le code car je dois indiquer qu'il faut aller chercher par exemple la Direction des ressources humaines dans la BDD ou la direction Générale etc.
Sinon j'ai vraiment besoin d'utiliser le bouton, ne dois pas je indiquer le bouton au sein de ma condition IF ?
IF condition ok
Sinon si je tape le code suivant :
$req = $bdd->prepare("SELECT * FROM utilisateurs WHERE direction = 'Direction des Opérations' AND token = ? ");
$req->execute(array($_SESSION['user']));;
$data = $req->fetch();
if ($data['direction'] === 'Direction des Opérations')
{
header('location: direction_des_operations.php');
die();
}
J'ai cette erreur et je ne comprends pas le retour par rapport au booléen.
) Notice: Trying to access array offset on value of type bool in C:\Users\mauffrais\Documents\monsite\landing.php on line 152
Je ne sais pas si c'est possible d'écrire cela :
$req = $bdd->prepare("SELECT * FROM utilisateurs WHERE direction = 'Direction des Opérations' AND token = ? ");
$req->execute(array($_SESSION['user']));;
$data = $req->fetch();
if ($data['direction'] === 'Direction des Opérations')
{
header('location: direction_des_operations.php');
die();
}
else
{
$req = $bdd->prepare("SELECT * FROM utilisateurs WHERE direction = 'Direction Juridique et Ressources Humaines' AND token = ? ");
$req->execute(array($_SESSION['user']));;
$data = $req->fetch();
if ($data['direction'] === 'Direction Juridique et Ressources Humaines')
{
header('location: direction_juridique_et_ressources_humaines.php');
die();
} }
Mais j'ai toujours la meme erreur :
( ! ) Notice: Trying to access array offset on value of type bool in C:\Users\mauffrais\Documents\monsite\landing.php on line 152
Call Stack
# Time Memory Function Location
1 0.0017 362736 {main}( ) ...\landing.php:0
( ! ) Notice: Trying to access array offset on value of type bool in C:\Users\mauffrais\Documents\monsite\landing.php on line 165
Call Stack
# Time Memory Function Location
Je suis désolée pour ce long message mais je voudrais tellement comprendre.