Utiliser bind_result() à la place de get_result()

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Utiliser bind_result() à la place de get_result()

Re: Utiliser bind_result() à la place de get_result()

par @rthur » 28 nov. 2018, 02:05

Bonjour,

Fais d'abord un phpinfo() pour vérifier que tu aies bien mysqli.
Si tu ne l'as pas, contacte OVH (ou regarde dans leur doc) pour avoir une version plus récente de PHP.
Si tu peux passer en PHP 7, fais le, tu auras une grosse augmentation de performance.

Utiliser bind_result() à la place de get_result()

par amarah » 26 nov. 2018, 10:41

Bonjour,

Je suis nouveau en php et je suis en train de concevoir un petit programme intégrant un panier d'achat.
J'ai eu un code sur un site que j'ai modifie et qui marche très bien en local.
Le problème, lorsque j'upload tout sur mon hébergement OVH, il m'indique une erreur avec la fonction get_result().
Call to undefined method mysqli_stmt::get_result().
Après des recherches, apparement, mon hébergement OVH ( je suis en mutu - PHP 5.5 ) ne prend pas en compte Mysqlnd avec cette version de PHP ( peut-être que je me trompe), c'est ce qui ferait que la fonction get_result() ne s'exécute pas.

Je souhaite donc utiliser la fonction bind_result() car c'est elle qui pourrait marcher sans Mysqlnd sur mon mutu mais je cale. Après plusieurs recherches, je n'arrive pas à récrire la fonction. J'ai besoin de votre aide svp pour réecrire la fonction avec bind_result(). Merci d'avance

Voici la fonction de base:
 function getDBResult($query, $params = array())
    {
        $sql_statement = $this->conn->prepare($query);
        if (! empty($params)) {
            $this->bindParams($sql_statement, $params);
        }
       $sql_statement->execute();
        $result = $sql_statement->get_result();      
        if ($result->num_rows > 0) {
            while ($row = $result->fetch_assoc()) {
                $resultset[] = $row;
            }
        }      
        if (! empty($resultset)) {
            return $resultset;
        }
    }