Próbujesz powiązać $litcode
ale masz CONCAT(language,'-',code)
. Masz 5 ?
w zapytaniu, ale próbujesz powiązać 6 parametrów.
Zmień swój kod na następujący:
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();