Call to a member function bind_param() on bool

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 : Call to a member function bind_param() on bool

Re: Call to a member function bind_param() on bool

par or 1 » 27 janv. 2021, 17:19

si les champs ne sont pas présents, mysql s'attend à ce qu'il y ai tous les champs dans la partie values, y compris l'id.

Re: Call to a member function bind_param() on bool

par barale78 » 27 janv. 2021, 13:56

Pourtant le nombre de champs dans la requête correspond bien au nombre de champs dans ma table mise à part le champ id bien sûr.

Re: Call to a member function bind_param() on bool

par or 1 » 27 janv. 2021, 12:06

https://www.php.net/manual/fr/mysqli.prepare.php
"mysqli_prepare() retourne un objet de traitement ou false si une erreur survient. "
$stmt valant false, une erreur est survenue.

Call to a member function bind_param() on bool

par barale78 » 27 janv. 2021, 12:03

Bonjour,

J'ai cette erreur probablement de booléen que je ne comprend pas malgré ma visite sur phpmanuel: Fatal error: Uncaught Error: Call to a member function bind_param() on bool in D:\xampp-php-7.3\htdocs\www\WC-V4\insertDevis.php:24 Stack trace: #0 {main} thrown in D:\xampp-php-7.3\htdocs\www\WC-V4\insertDevis.php on line 24
    $nom = $_POST['nom'];
    $email = $_POST['email'];
    $telephone = $_POST['telephone'];
    $adresse = $_POST['adresse'];
    $ville = $_POST['ville'];
    $cp = $_POST['cp'];
    $ddeConcerne = $_POST['radio'];
    $fonctionnalites = implode('|', $_POST['checkbox']);
    $message = $_POST['message'];

$stmt = $mysqli->prepare('INSERT INTO devis_clients VALUES  (?,?,?,?,?,?,?,?,?)');
$stmt->bind_param('s', $nom, $email, $telephone, $adresse, $ville, $cp, $ddeConcerne, $fonctionnalites, $message);

$stmt->execute();
$stmt->close();
Je vous remercie de votre aide