"Cannot pass parameter 2 by reference" bind_param

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 : "Cannot pass parameter 2 by reference" bind_param

"Cannot pass parameter 2 by reference" bind_param

par IgorM » 01 mars 2016, 15:11

Bonjour,

Comme le titre du sujet l'indique, je rencontre une erreur dans le développement d'un script, ce script consiste à afficher une suite de nombres: 1 2 3 1 2 3 1 2 3, et de leur attribuer un username, une fois cette première étape passée, j'aimerais faire une update de la valeur "clan" de chaque membre en fonction de la valeur de $i donnée, j'ai donc développé le script suivant:

Code : Tout sélectionner

require("database.php"); $query = "SELECT username FROM matable WHERE server=1"; $stmt = mysqli_prepare($sql, $query); $stmt->bind_result($username); $stmt->execute(); for($i=1;$i<=3;$i++){ while($stmt->fetch()){ if($i > 3){ $i = 1; } echo $username; require("database.php"); $query1 = "UPDATE matable SET clan=? WHERE username=? AND server=1"; $stmt1 = mysqli_prepare($sql, $query1); $stmt1->bind_param('is', $i++, $username); $stmt1->execute(); $stmt1->close(); require("database.php"); $query1 = "UPDATE matable SET divider=1 WHERE id=1"; $stmt1 = mysqli_prepare($sql, $query1); $stmt1->execute(); $stmt1->close(); insert_info_chat("Tous les membres sont prêts, ils ont tous été répartis dans leur clan respectif"); } } $stmt->close();
Cependant, php m'indique l'erreur suivante: "Cannot pass parameter 2 by reference", sur la ligne suivante: $stmt1->bind_param('is', $clan, $username); En base, j'obtient donc l'update de valeur 1 pour le premier utilisateur, en revanche, pour les autres, cette valeur reste sur 0. Je vous remercie par avance, et j'espère que quelqu'un pourra m'aider !