Ben emir teyidinde takip etmek için kullanılan iki webforms var. Onlar aynı MySQL veritabanı ile etkileşim.
This is the database:
İlk webform müşteri hizmetleri personeli tarafından sipariş kaydetmek için kullanılır. Sadece iç sistemlerinde kullanılan sipariş numaranızı ve bir zaman damgası (timelavet) içerir.
Bu, bunun için kod (ve o inşaat):
// Save data
$mySQLQuery = "INSERT INTO bestilling SET godkendelse = '" . mysql_real_escape_string($_POST['godkendelse']) . "', ordre = '" . mysql_real_escape_string($_POST['ordrenummer']) . "', timelavet = NOW() ";
$rs = @mysql_query($mySQLQuery);
İkinci form sipariş teyit artı onay (timegodkend) için bazı ekstra bilgi ve bir zaman damgası sağlamak için müşteri tarafından kullanılmaktadır. Bu DB giriş güncellemek için ne tevhit için sipariş numarasını kullanır:
// Save data
$mySQLQuery = "UPDATE bestilling SET kursusleder = '" . mysql_real_escape_string($_POST['kursusleder']) . "', telefonnummer = '" . mysql_real_escape_string($_POST['telefonnummer']) . "', email = '" . mysql_real_escape_string($_POST['email']) . "', godkendelse = '" . mysql_real_escape_string($_POST['godkendelse']) . "', kommentar = '" . mysql_real_escape_string($_POST['kommentar']) . "', timegodkend = NOW() " . "' WHERE ordre = '" . mysql_real_escape_string($_POST['ordre']). "'";
$rs = @mysql_query($mySQLQuery);
Bu çalışmıyor! Komik bir şey ben timegodkend değişken olmadan işe alabilirsiniz ama ben koymak olursa olsun '", timegodkend = ŞİMDİ ()", bana bir hata mesajı veriyor
Hatası:
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 ordre = '238581'' at line 1 When executing: UPDATE bestilling SET kursusleder = 'test1', telefonnummer = '2345678', email = 'a@brygge.dk', godkendelse = 'Ja', kommentar = 'test', timegodkend = NOW() ', WHERE ordre = ‘238581’
Nedir, ikinci kod parçası ile yanlış?