Mysqli更新抛出对成员函数BIND_Param()错误的调用
function createTable($array, $memberMysqli){ foreach ($array as $key => $value) { //echo "<p>Key: ".$key." => Value: ".$value . "</p>"; $query = "ALTER TABLE questionnaire ADD ".$key." text"; if($stmt = $memberMysqli->prepare($query)) { $success = $stmt->execute(); } } echo "<h1>Array count: ". count($array) ."</h1>" ;}
$stmt = $memberMysqli->prepare("INSERT INTO questionnaire(userid) VALUES (?)");$stmt->bind_param('s', $_POST['userid']);$stmt->execute();$rowid = $stmt->insert_id;$stmt->close();$memberMysqli->autocommit(FALSE);function updateColumn($memberMysqli, $query, $uid, $value) { if ($value) { $stmt = $memberMysqli->prepare($query); //Throws bind param error here $stmt->bind_param("ss", $value, $uid); $stmt->execute(); }}function loopInputs($array, $memberMysqli, $rowid){ foreach ($array as $key => $formvalue) { var_dump($key); updateColumn($memberMysqli, "UPDATE questionnaire SET $key = ? WHERE id = ?", $rowid, $formvalue); }}loopInputs($_POST, $memberMysqli, $rowid);$memberMysqli->commit();$memberMysqli->close();
潇潇雨雨