• 05-05-2020, 22:37:00
    #1
    merhaba,
    veritabanında tablomda order isimli bir sütun var, ismini değiştirmem mümkün değil. Sanırım özel isim olduğu için PHP kullanarak veri ekleyemiyorum. Insert kodundan order'ı sildiğimde sorunsuz bir şekilde ekleniyor. Bu sorunu aşmanın bir yolu var mı?
    Kodlar:

    $sayac++;
    $uzanti = ".".$value['uzanti'];
    
    $query = $db->prepare("INSERT INTO tblisim SET
    extension = ?,
    dnsmanagement = ?,
    emailforwarding = ?,
    idprotection = ?,
    eppcode = ?,
    autoreg = ?,
    order = ?
    ");
    $insert = $query->execute(
    array(
    $uzanti, "on", "on", "", "on", "verigudum", $sayac
    ));
    if ( $insert ){
    echo "başarılı";
    }else{
    echo "s";
        }
  • 05-05-2020, 22:46:18
    #2
    `order` olursa sorun çıkarmayabilir.
  • 05-05-2020, 22:51:48
    #3
    patlican adlı üyeden alıntı: mesajı görüntüle
    `order` olursa sorun çıkarmayabilir.
    Denedim hocam aynı şekilde hata alıyorum.
  • 05-05-2020, 23:08:32
    #4
    takip
  • 05-05-2020, 23:31:55
    #5
    Hocam kendi localimde denedim birebir aynı tablo kurgunuzu yaptım.

    $query = $db->prepare("INSERT INTO tblisim SETextension = ?,dnsmanagement = ?,emailforwarding = ?,idprotection = ?,eppcode = ?,autoreg = ?,`order` = ?");
    
    $insert = $query->execute(    array(        $uzanti, "on", "on", "", "on", "verigudum", $sayac    ));
    
    if ( $insert ){    echo "başarılı";} 
    else{    echo "hata";    $arr = $query->errorInfo();    print_r($arr);}
    sizin order halinde gönderince zaten
    "You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'order = '2'' at line 8hatası alınıyor.

    Ama ilk başta dediğim şekilde yaptığınızda çalışıyor.

    'order' adı MySQL'e ayrılmış anahtar kelime olduğu için direk tırnaksız yazmak yazım hatası olarak algılanıyor. Order by dan dolayı