Beberapa hal yang perlu diperbaiki. pertama Anda menggunakan mysql ketika Anda harus menggunakan mysqli atau PDO. Kedua Anda menggunakan data posting tanpa melarikan diri sama sekali. Ketiga, Anda tidak perlu memilih dan memperbarui ini. Anda dapat melakukannya dalam satu pernyataan.
$query = "UPDATE tinyblog SET views = views + 1 WHERE id = (SELECT id FROM tinyblog where id=:article)"
$db = new PDO('mysql:host=localhost;dbname=mydb', 'username', 'password');
$stmt = $db->prepare($query);
$stmt->execute(array(":article"=>$article_id));
Apa yang kami lakukan di sini adalah membuat pernyataan yang disiapkan dengan satu pemegang tempat. Kami menamakannya sebagai :article
tapi itu bisa dibiarkan sebagai ?
sebagai gantinya.
Kemudian ketika kueri dijalankan, Anda perlu mengisi bit yang hilang dengan memasukkan parameter. Itulah yang kita lakukan pada langkah terakhir dengan array(":article"=>$article_id)
Karena ini adalah parameter bernama, kami menggunakan array asosiatif. Atau Anda bisa memanggil eksekusi tanpa parameter apa pun jika Anda memanggil bindParam pertama.