Witam
Dzisiaj postanowiłem się pouczyć o PDO, zamysł ogólny z pliku csv pobrać dane i zrobić UPDATE w bazie lecz jest jakiś problem, to postanowiłem zrobić krótsza wersję skryptu do sprawdzenia ale i tak jest problem którego nie widzę :)
Kod
<?php
$id = "AGADLOEKF0001";
$pub = 1;
$mysql_host = 'localhost';
$port = '3306';
$username = 'root';
$password = 'haslo';
$database = 'test';
try {
$conn = new PDO('mysql:host='.$mysql_host.';dbname='.$database.';port='.$port, $username, $password );
$conn->exec("SET CHARACTER SET utf8");
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = " UPDATE `test`
SET `status` = :status,
WHERE `kod`= :kod
";
$statement = $conn->prepare($sql);
$statement->bindValue(":status", $pub);
$statement->bindValue(":kod", $id);
$count = $statement->execute();
$conn = null; // Disconnect
}
catch(PDOException $e) {
echo $e->getMessage();
}
?>
Po wykonaniu otrzymuję błąd
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE `kod`= 'AGADLOEKF0001'' at line 3
Co ja tutaj robię źle uczę się ze strony
http://www.phpeveryday.com/articles/PDO-Insert-and-Update-Statement-Use-Prepared-Statement-P552.html
dodanie znacznika <code class="none">
- @furious programming