sql >> Database teknologi >  >> RDS >> Mysql

BOB Udarbejdet erklæring Inde i en klasse

Du bruger ikke bindingsfunktionen i PDO helt rigtigt. Du bør gøre noget i stil med følgende:

public function update($table, $key, $value, $id) {
    $stmt = $this->conn->prepare(
        "UPDATE $table SET $key = :value WHERE id = :id"
    );
    return $stmt->execute(array(
        ':value' => $value,
        ':id' => $id
    ));
}

Først skal du sætte hele strengen, der skal bindes, ind i nøglen til bindingsarrayet. Så du sætter ':id' i stedet for 'id' . Du satte også variablerne direkte ind i forespørgslen i tilfælde af $table og $value , men så forsøge at binde dem til hinanden, hvilket ikke giver mening.

Rediger:Tabeller og kolonnenavne kan ikke bindes med PDO.




  1. SQL-tæller for at inkludere nulværdier

  2. Xampp MS SQL server PHP 5.6

  3. hvordan man koder flere rækker fra mysql til json ved hjælp af php

  4. Postgres holdt lige tilfældigt op med at virke (Rails, PGSQL.5432)