Stai cercando di associare $litcode
ma hai CONCAT(language,'-',code)
. Hai 5 ?
nella tua query ma stai cercando di associare 6 parametri.
Cambia il tuo codice in questo:
Database::connect();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "UPDATE literatures set spot = ?, code = ?, language = ?, count = ?, litcode = ? WHERE id = ?";
$q = $pdo->prepare($sql);
$q->execute(array($spot,$code,$language,$count,$litcode,$id));
Database::disconnect();