Bonjour à tous et merci d'avance pour vos réponse.
voici l'intitulé de ma question, j'ai une Procédure stockée :
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
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 
BEGIN
	-- If the p_brandId is 0, we create a new item
	IF p_brandId = 0 THEN
 
		INSERT INTO brand (
			brandIconId,
			brandRank,
			brandName,
			brandIsDeleted )
 
		VALUES (
			p_brandIconId,
			p_brandRank,
			p_brandName,
			p_brandIsDeleted )
		;
 
		SELECT LAST_INSERT_ID() INTO p_brandId;
	-- else we update it. Now if the p_brandId is not 0 and record doesnt exist it will be created anyway
	ELSE
 
		INSERT INTO brand (
			brandId,
			brandIconId,
			brandRank,
			brandName,
			brandIsDeleted )
 
		VALUES (
			p_brandId,
			p_brandIconId,
			p_brandRank,
			p_brandName,
			p_brandIsDeleted )
 
		ON DUPLICATE KEY UPDATE
			brandIconId = p_brandIconId,
			brandRank = p_brandRank,
			brandName = p_brandName,
			brandIsDeleted = p_brandIsDeleted
		;
 
	END IF;
 
	-- Now we return the full VO value
	-- SELECT p_brandId;
	-- SET p_brandId = CONVERT( p_brandId, UNSIGNED );
	 CALL getBrand( p_brandId );
 
 
END
Lorsque j'envoie mes données à cette requête de la manière suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
$result_query = mysqli_query($link, "CALL setBrand($params)");
cette procédure fonctionne correctement et je retrouve les données dans ma table.
Le problème vient de ce que $result_query devrait me renvoyer mon enregistrement via CALL getBrand(p_brandId).
getBrand() fonctionne bien et me renvoie les données espérées dans une autre fonction php.
mysqli_query() selon la doc officielle renvoie l'enregistrement avec SELECT, SHOW, EXPLAIN, DESCRIBE devrait renvoyer un objet.
J'en déduis que CALL est le problème cependant, j'ai tenté de supprimer CALL et de le remplacer par un SELECT malheureusement pour un résultat identique.
J'utilise un éditeur mysql, navicat pour ne pas le nommer, qui permet de gérer et tester ces procédures, et je n'ai pas d'erreur, et l'enregistrement est correctement renvoyé par ce bief-là.
Si quelqu'un peu me donner une piste valable, c'est avec plaisir que je la suivrais.
Salutations.