Le code suivant de http://php.morva.net/manual/en/mysqli-stmt.bind-result.php montre une requête mysqli en cours de préparation et d'exécution. while ($ stmt-> fetch()) ressemble à la génération de la ressource résultat. Puis-je changer ceci pour inclure un appel à une fonction, par ex.MySQL - passe le champ de la base de données via la fonction PHP avant de renvoyer le résultat
while ($stmt->fetch()) {
foreach($row as $key => $val)
{
$c[$key] = performFunction($val);
}
$result[] = $c;
}
Ensuite, au lieu de print_r ($ result) Je retourneraient ($ result). De cette façon, je peux changer de façon dynamique la valeur de $ val
Le code original =
if ($stmt = $mysqli->prepare("SELECT * FROM sample WHERE t2 LIKE ?")) {
$tt2 = '%';
$stmt->bind_param("s", $tt2);
$stmt->execute();
$meta = $stmt->result_metadata();
while ($field = $meta->fetch_field())
{
$params[] = &$row[$field->name];
}
call_user_func_array(array($stmt, 'bind_result'), $params);
while ($stmt->fetch()) {
foreach($row as $key => $val)
{
$c[$key] = $val;
}
$result[] = $c;
}
$stmt->close();
}
$mysqli->close();
print_r($result);
Est-ce que ce travail, comment pourrais-je faire cela?
Merci à tous ...
Merci Kalium, vous avez dit "pousser le tableau associatif résultant sur votre jeu de résultats" ... pouvez-vous fournir un exemple de code de pousser un tableau assoc sur un ensemble de résultats. Donc j'utiliserais mysqli_result :: fetch_assoc() pour obtenir chaque ligne? puis effectuer la fonction sur la ligne? comment repousser la ligne sur le jeu de résultats? – undefined
Puis-je faire cela en utilisant mysql - J'ai MySQL version 5.0.22. Les commandes mysqli retournent des erreurs - par exemple "Appel à une fonction non définie mysqli_connect()" – undefined
C'est parce que vous n'avez apparemment pas installé l'extension mysqli. Vous pouvez pousser le tableau associatif dans votre ensemble de résultats comme ceci: $ results [] = $ associativeArray; – Kalium