bind_result dynamic?

cedger
Invité n'ayant pas de compte PHPfrance

14 mars 2012, 17:27

Bonjour à tous,
je crée une requete sql de facon dynamique, par conséquent, le nombre de colonne de resultat n'est pas connu, j'ai donc un bind_result que je dois construire, mais comment???

je peux avoir une "infinité de bind result par exemples:
$stmt->bind_result($id1, $nom1, $id2, $nom2, $id3, $nom3, $id4, $nom4, $id5, $nom5);
ou
$stmt->bind_result($id1, $nom1, $id2, $nom2, $id3, $nom3);
je connais bien entendu la valeur max numerique de depart, donc je sais que je dois aller jusqu'a 5 (premier exemple) ou 3 (second)

comment faire, avez vous une idée?

merci

ceric

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

14 mars 2012, 17:42

Salut,

Ne sachant pas à quoi ça sert je te dirais simplement de passer une tableaux en argument ou un objet générique qui n'aurais que des propriétés publique.

@+
Il en faut peu pour être heureux ......

ViPHP
ViPHP | 5462 Messages

14 mars 2012, 17:46


cegder
Invité n'ayant pas de compte PHPfrance

14 mars 2012, 18:04

Bonjour, merci pour vos reponse, mais je ne comprend pas la premiere, et ne vois pas comment exploiter la seconde...

ViPHP
xTG
ViPHP | 7331 Messages

14 mars 2012, 18:25

Cette fonction provient de la class mysqli_stmt ?

Si tu ne connais pas le nombre de colonne retournée, utilises le fonctionnement normal.
A savoir l'exploitation de l'array résultant d'une méthode fetch().
Par la suite si tu souhaites vraiment extraire le nom des colonnes en tant que variable tu peux utiliser la fonction extract().