Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
e ai rapaziada...
é o seguinte, tenho uma função para inserção dinâmica de dados no BD para PDO, o problema é que esta função esta com um erro, e eu não consigo arrumas, o erro é na classe... eu acho...
minha função, criada por DAVID CHC., esta dando erro na linha 24:
linha 24: return $stmt->execute($dados);
erro: Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in on line 24
script completo:
<?php
define('HOST', 'localhost');
define('USER', 'root');
define('SENHA', '');
define('BD', 'teste');
class Conection {
private static $instance;
public static function getInstance() {
if (is_null(self::$instance)) {
$conex = 'mysql:host='.HOST.';dbname='.BD;
self::$instance = new PDO($conex, USER, SENHA);
}
return self::$instance;
}
}
function Inserir(array $dados, $tabela) {
$SQLStatement = sprintf('INSERT INTO `%s` (`%s`) VALUES (%s)', $tabela,, ', array_keys($dados)),implode(', ', array_fill(0, count($dados), '?')));
$stmt = Conection::getInstance()->prepare($SQLStatement);
return $stmt->execute($dados);
}
$dados = array('nome' => 'Junior', 'sobrenome' => 'Eberhardt');
Inserir($dados, 'produto');
?>Carregando comentários...