Ich versuche, eine SQL-Abfrage mit Javascript mit einer Variablen aus einer Eingabe stammen. In dieser Eingabe Zeichen wie '. Und "zusammen mit anderen eingegeben werden kannEscape-Sonderzeichen in Javascript SQL-Abfrage
Hier ist, was mein Script-Funktion wie folgt aussieht:
function insertJobDesc (r) {
rowid=r;
var qty = document.getElementById('Qty' + r).value;
var desc = document.getElementById('Desc' + r).value;
desc = desc.replace(/&/g, "&").replace(/>/g, ">").replace(/</g, "<").replace(/"/g, '"""').replace(/'/g, '"'"');
sendAsync("editDatabase.php?sql=UPDATE+jobdesc+SET+qty="+qty+",+description='"+desc+"',+rowID="+rowid+"+WHERE+id="+rowid+"+AND+jobID="+jobID);
}
Ein Beispiel für den Wert für‚desc‘, die ich wollen würde zu senden ist: 80-0234-1 6'5 "GATE So ist es eine Kombination aus Zahlen, Buchstaben und Sonderzeichen. Ich habe versucht, jeden von ihnen zu ersetzen, aber es hat nicht geklappt.
Irgendwelche Ideen?
Diese gefährliche und stumm ist. Sie legen Datenbankinformationen offen, die es jedem erlauben würden, Ihre gesamte Tabelle zu löschen. SQL-Abfragen werden im Browser nicht angezeigt. Kompilieren Sie sie auf dem Server nur mit den gesendeten Formularwerten, und überprüfen Sie die gesendeten Werte. – charlietfl
@charlietfl Ich bin nicht so besorgt über irgendwelche Probleme mit der Injektion, da die Site nur von einigen wenigen im lokalen Netzwerk verwendet wird. – Eksepshon
Noch immer kein Grund, es so zu machen. Eine Person kann eines Tages verärgert werden. Es macht keine einfachere Coding-Abfrage im Browser vs auf dem Server und Sie haben keine Möglichkeit, die Eingabe auf diese Weise zu validieren – charlietfl