0
У меня есть эта функция, с которой я передаю имя таблицы и данные.PDO не вставлять правильные данные
public function quickInsert($table, $data) {
$keys = array_keys($data);
$keysStr = '`'.implode('`,`', $keys).'`';
$valStr = ':'.implode(',:', $keys);
$Sql = "INSERT INTO `$table` ($keysStr) VALUES ($valStr)";
dump($Sql);
$st = $this->connection->prepare($Sql);
foreach ($data as $k => $v) {
dump(':'.$k.' - '.$v);
$st->bindParam(':'.$k, $v);
}
//dump($st->execute());
}
Выход из отвалов является
string(114) "INSERT INTO `users` (`email`,`password`,`first_name`,`last_name`) VALUES (:email,:password,:first_name,:last_name)"
string(21) ":email - [email protected]"
string(140) ":password - myHashedPasswordString"
string(17) ":first_name - Tom"
string(17) ":last_name - Hart"
Однако, когда я выполнить запрос, данные во всех полях фамилия (в данном случае «Харт»).
Что я получил неправильно?
Совершенно, th ank вы очень много, я не знал, что bindParam работал так :). –
Вы должны принять ответ – max
Я не могу на 7 минут, я скоро как могу –