Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Permintaan pembaruan MySQL dengan pernyataan yang disiapkan memberikan kesalahan

Telah dikatakan dalam komentar, Anda melewatkan placeholder.

Jadi, ubah:

$sql = 
    "UPDATE blog_posts 
        SET post_title='$post_title', 
        content='$content', 
        author_name='$author_name', 
        category='$category', 
        post_date='$post_date',
        image='$image_name'
        WHERE post_id='$id'";

ke:

$sql = 
    "UPDATE blog_posts 
        SET post_title=?, 
        content=?, 
        author_name=?, 
        category=?, 
        post_date=?, 
        image=? 
        WHERE post_id=?";

Sesederhana itu.

Manual berisi sintaks yang tepat:

Jangan lupa untuk menyampaikan argumen dalam urutan yang benar . Mereka harus diteruskan dalam urutan yang sama seperti yang digunakan dalam kueri (Anda menukar gambar dengan tanggal posting), jadi seharusnya:

$stmt->bind_param("ssssisi", $post_title, $content, $author_name, $category, $post_date, $image_name, $id);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengapa saya tidak bisa menggunakan variabel sebagai nama tabel dalam prosedur tersimpan?

  2. layanan mysqld berhenti sekali sehari di server EC2

  3. jdbc ke kesalahan MYSQL:Tidak ditemukan driver yang cocok untuk jdbc:mysql://localhost:3306/test?user='root'&password=''

  4. Nilai pengikatan PDO untuk pernyataan MySQL IN

  5. Tabel Kesalahan Mysql 1050 sudah ada padahal sebenarnya tidak