Bonjour.
J'ai une procédure stockée toute simple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 DROP PROCEDURE `connect`// CREATE DEFINER=`root`@`localhost` PROCEDURE `connect`(IN login_in VARCHAR( 50 ) , IN password_in VARCHAR( 50 ) , INOUT etat BOOL) BEGIN SELECT count( * ) INTO etat FROM users WHERE login = login_in AND password = password_in; END
Dans mon code php je fais ceci.
Etat ne vaut jamais rien alors qu'il devrait me renvoyer 1 sachant que
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 $bdd = new PDO('mysql:host=localhost;dbname=poo_panier', 'root', ''); $login = 'jerome'; $password = 'azerty'; $etat ; $result = $bdd->prepare("CALL connect(:login,:password,:etat)"); $result->bindParam(':login', $login); $result->bindParam(':password',$password); $result->bindParam(':etat',$etat,PDO::PARAM_INT|PDO::PARAM_INPUT_OUTPUT); $result->execute(); echo $etat;me renvoi bien 1 sous phpmyadmin par exmple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT count( * ) FROM users WHERE login = 'jerome' AND password = 'azerty'
Merci de votre aide.
Partager