2010-04-12 18 views
12

In JavaScript versuche ich die Eingabe des Benutzers verwenden, um meine Datenbank zu durchsuchen. Zum Beispiel ist die Benutzereingabe "Monster" und die Daten meiner Datenbank sind "Monster". Wie kann ich es ungeachtet des Gehäuses anpassen?Javascript: ignorieren Groß-und Kleinschreibung der Zeichenfolgen

+0

Suchen Sie etwas wie das: http://stackoverflow.com/questions/177719/javascript-case-insensitive-search – zengr

+0

@ zengr Ich glaube nicht, dass das, was sie suchen. Dies betrifft das Durchsuchen einer Datenbank im Gegensatz zum Durchsuchen der Zeichenfolge: D –

Antwort

23

Javascript Zeichenfolge Groß-und Kleinschreibung Vergleiche können mit string.toUpperCase durchgeführt werden.

if (input.toUpperCase() === "OTHER STRING") 
    .... 

(Ich bin Ihre Datenbank Beispiel unter der Annahme, ist nur ein Beispiel, wie Datenbanken in der Regel der Fall von Strings ignorieren :)

+0

Sie haben vergessen, die Funktion aufzurufen. – SLaks

+1

Es gibt keinen Wert von 'input', so dass' (input.toUpperString == "anderer String") ', da' "anderer String" 'Kleinbuchstaben hat – Dancrumb

+0

na dann (input.toUpperCase() ===" other string ".toUpperCase()) oder toLowerCase() auf beiden ... – mojjj

0

Sie konvertieren sollten sowohl JavaScript-String und Datenbank, in der Klausel String für Kleinbuchstaben zu verwenden.

Aber ich denke Datenbank wie SQL Server und MySQL sind Groß-und Kleinschreibung in Bezug auf Zeichenfolge.

-1

Wenn Sie AJAX verwenden, verwenden Sie eine serverseitige Sprache. Warum lassen Sie das serverseitige Skript die Daten nicht normalisieren? Sie können diese Aufgabe sogar an die Datenbank delegieren, indem Sie die richtigen UPPER- und LOWER-Funktionen verwenden. Aus Sicherheitsgründen sollte die Datennormalisierung jedoch eine Aufgabe für das serverseitige Skript sein.

Sie können JS verwenden, um die Daten im Hinblick auf Länge und Syntax vorab zu prüfen, vor allem, um dem Benutzer zu helfen und Fehler zu vermeiden. Eine Sache sollten Sie jedoch niemals tun, wenn Sie unbehandelte JS-Daten abfragen. Jeder könnte den JS manipulieren und a' OR 1=1; DROP TABLE users;-- abfragen, selbst wenn Sie die Daten validieren.

+2

Obligatorisch: http://xkcd.com/327/ – MatrixFrog

1

Verwenden Sie match() anstelle von search().

Verwandte Themen