mam problem. Wywala mi errora gdy (tak sądzę) próbuję zbindować parametry w takim oto sobie kodzie:
public function select($table,$where = NULL,$add = NULL,$how = '*'){ if($where != NULL) $where = 'WHERE '.$where; $select = $this->db->prepare('SELECT :how FROM :table :where :add'); $select->bindParam(':how', $how); $select->bindParam(':table', $table); $select->bindParam(':where', $where); $select->bindParam(':add', $add); $select->execute(); } public function insert( $table, $value){ $i = 1; $ij = 0; $j = null; foreach($key as $keys){ $j++; } $values = ''; foreach($key as $keyss){ $values .= $values . $keyss . ' = ?, '; } $insert = $this->db->prepare('INSERT INTO '.$table.' SET '.$values); while($i < $j){ $insert->bindParam($i,$value[$ij]); $i++; $ij++; } $insert->execute(); }
Dokładny kod błędu:
Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in (Jakaś ścieżka) on line 85
Nie ma co owijać w bawełnę, powiem że nie wiem zupełnie co ten błąd oznacza.
Myślę że dobrze zbindowałem wartości ale skoro PHP wywala błąd to coś jest nie tak...
Próbowałem różnych metod jednak żadna z "moich" nie działa...
Prosiłbym o pomoc.
Dziękuję za wszystkie odpowiedzi
