tablosunu güncelleştirmek olamaz

2 Cevap php

3 tablolar var:

  1. Vehicle_record
  2. Sigorta
  3. Roadtax

Ben vehicle_record tablosunu güncelleyerek başarılı değilim iken, diğer iki tablo güncelleme olamaz.

Ben sorguyu çalıştırdığınızda, aşağıdaki hata iletisi görüntülenir:

1064 - Kendi SQL sözdizimi bir hata var; line 1 yakınlarındaki 'WHERE regno =' TAC 2123'' kullanma hakkı için sözdizimi MySQL sunucu sürümü karşılık kılavuzunu kontrol

2 Cevap

Hata mesajı, ben size tarih türü bir dize ile anahtar var sanıyorum. Sen sorguya koymak befor bütün değerleri kaçmak gerekir.

Sana AdoDB library denemenizi öneririm. Bu kütüphane çok veritabanı ve kolayca ekleme ve güncelleme yapmak için yardımcı olacaktır. Kullanarak güncelleme Örnek AdoDB:

$regno = $adodb->qstr('TAC 2123');
$data = array(
 'col1' => 'val1',
 'col2' => 'val2',
 'col3' => 'val3'
);
$result = $adodb->AutoExecute($tablename, $data, 'UPDATE', "regno=$regno");

Önce bir sorgu koydu değerini kaçan ederek, SQL enjeksiyonu attact önleyebilir. Sonra değer kaçış tarafından otomatik olarak yapıyor, AdoDB AutoExecute kullanarak bunu yapıyor AdoDB.

Tipi dize ile anahtarı için, bunu elle yapmanız gerekir. Tuşuna intval $adodb->qstr() fazla tercih edilir kullanılarak bir tam sayı ise,.

Bize burada size yardımcı olmak için için, sunucuya gönderilen oluyor SQL deyiminin tam metni sağlamak gerekir. Sorunuza bir parçası olarak yapıştırın.