PDO & MS SQL récupération d'un paramètre de sortie d'une procédure stockée
	
	
		Bonjour tout le monde,
J'aurais besoin de vôtre aide, si vous le voulez bien, pour élucider mon mystère:
J'ai une procédure stocker simple avec un paramètre en sortie dans ma base de données SQL SERVER
	Code:
	
| 12
 3
 4
 5
 6
 7
 
 | DROP PROCEDURE [dbo].[PROC_TEST] 
GO
CREATE PROCEDURE [dbo].[PROC_TEST]	@pProfile nvarchar(30) OUTPUT
AS
BEGIN
	SET @pProfile	= 'profile'
END | 
 
Je cherche l’exécuter dans mon programme en php et récupérer donc la variable, je le fait de cette manière:
	Code:
	
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 
 | <?php
	require_once '_db.php';
 
	$stmt = $db->prepare('CALL PROC_TEST(?)');
 
	$stmt->bindParam(1, $value, PDO::PARAM_STR, 30);
	$stmt->execute();
 
	echo "value contient :".$value; //Résultat attendue: "value contient :profile";
?> | 
 Et c'est là que ça coince, en sortie, à la place d'un jolie "profile" voici ce que j'obtient:
value contient :½uteôM)@½ption½€½ption½
Alors je me doute qu'il y a quelque chose qui ne vas pas dans mon code pourtant pas bien épais mais quoi?
J'ai essayé plusieurs choses que j'ai trouvé dans divers forum:
- $stmt->nextRowset();
- $out = $stmt->fetch();
- Faire un EXEC ou EXECUTE à la place de CALL
- Mettre OUTPUT à côté du paramètre
Mais rien ne fonctionne j'ai un résultat à peu près toujours différent mais tout aussi bizarre avec des caractères spéciaux.
Je vous remercie d'avance et je m'en remets à vous.