Ich versuche, eine kleine Blog-Anwendung mit vibe.d zu erreichen. Ich habe eine Form in dieserSql-Abfrage kann nicht mit Anführungszeichen umgehen
http://localhost:8888/gönderiler/oluştur
Benutzereingaben Beitragstitel und -inhalt adressieren. Dann werden diese Informationen in einer Datenbank gespeichert. Bis jetzt so weit so gut.
Lasst uns sagen, gibt der Benutzer eine Zeichenfolge mit einem Anführungszeichen wie folgt aus:
deneme'miz
als SQL-Abfrage wird wie folgt aus:
INSERT INTO gonderiler (kullanici_no, baslik, icerik, created_at, updated_at) VALUES (1, 'Deneme', 'deneme'miz', '2017-09-25 12:29:30', '2017-09-25 12:29:30')
Wie sehen, gibt es 3 Anführungszeichen Zeichen .
auto başlık = this.başlık_.replace("'","\'");
auto içerik = this.içerik_.replace("'","\'");
logInfo("%s %s", başlık, içerik);
auto sqlKomutu = "INSERT INTO gonderiler (kullanici_no, baslik, icerik, created_at, updated_at) VALUES (1, '"
~ başlık ~
"', '"
~içerik ~
"', '"
~ zaman ~
"', '"
~ zaman ~
"')";
Ich habe versucht, "Zeichen mit" zu ersetzen, aber ich denke, es funktioniert nicht.
Ein Freund von mir schlug vor, diese Zeichen zu verwenden.
merhaba "dünya"
Aber dieses Mal bekomme ich einen Fehler wie folgt aus:
MySQL error: Unknown column 'deneme' in 'field list'
Update: gelöst
ich doppelte Anführungszeichen geputtet wie vorgeschlagen.
auto başlık = this.başlık_.replace("'",`''`);
auto içerik = this.içerik_.replace("'",`''`);
Fehler nichts mit dem zu tun hat, Zitate. Und localhost hat einen Namen mit Grund. Es ist * LOKALER HOST *, was bedeutet, dass Sie * lokal * darauf zugreifen können. Wir können nicht darauf zugreifen. – tilz0R