Heim  >  Artikel  >  Datenbank  >  So implementieren Sie die Dateneingabevalidierungsfunktion in Dart mithilfe von MySQL

So implementieren Sie die Dateneingabevalidierungsfunktion in Dart mithilfe von MySQL

WBOY
WBOYOriginal
2023-07-30 16:25:091381Durchsuche

So implementieren Sie die Dateneingabevalidierungsfunktion in Dart mit MySQL

Bei der Entwicklung von Webanwendungen ist die Dateneingabevalidierung ein sehr wichtiger Teil. MySQL ist eine häufig verwendete relationale Datenbank und Dart ist eine beliebte Webentwicklungssprache. In diesem Artikel wird erläutert, wie Sie mit MySQL die Dateneingabevalidierung in Dart implementieren.

1. Umgebungseinrichtung
Zuerst müssen wir die MySQL-Datenbank installieren und eine Datenbank und eine entsprechende Datentabelle erstellen, um die vom Benutzer eingegebenen Daten zu speichern. Sie können die folgende SQL-Anweisung verwenden, um eine Datentabelle zu erstellen:

CREATE TABLE-Benutzer (

id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
email VARCHAR(50) NOT NULL,
password VARCHAR(50) NOT NULL

);

In Dart verwenden wir die dart_mysql-Bibliothek, um eine Verbindung zur MySQL-Datenbank herzustellen. Fügen Sie die folgenden Abhängigkeiten in der Datei pubspec.yaml hinzu:

dependencies:
mysql1: ^0.15.0

Installieren Sie dann die Abhängigkeiten, indem Sie flutter pub get ausführen.

2. Mit der MySQL-Datenbank verbinden
Im Dart-Code müssen wir zunächst die mysql1-Bibliothek importieren und eine Verbindung zur Datenbank herstellen. Hier ist ein Beispielcode zum Herstellen einer Verbindung zu einer MySQL-Datenbank:

import 'package:mysql1/mysql1.dart';

Futureb12db66feab07ca85c5e0979380c29b8 connectToDatabase() async {
final settings = ConnectionSettings(

host: 'localhost',
port: 3306,
user: 'root',
password: 'password',
db: 'database_name',

);

final conn = waiting MySqlConnection.connect(settings);
return conn;
}

3. Überprüfung der Dateneingabe
Bevor wir die Daten verarbeiten, müssen wir überprüfen, ob die vom Benutzer eingegebenen Daten den Anforderungen entsprechen. Das Folgende ist ein Beispielcode, um zu überprüfen, ob der Benutzername zulässig ist:

bool isUsernameValid(String username) {
// Die Länge des Benutzernamens muss zwischen 4 und 20 Zeichen liegen
if (username.length c766325443999452cc1b962525afbd56 20) {

return false;

}

// Benutzername darf nur Buchstaben, Zahlen und Unterstriche enthalten
final regex = RegExp(r'^[a-zA-Z0-9_]+$');
if ( ! regex.hasMatch(username)) {

return false;

}

return true;
}

Ebenso können wir andere Verifizierungsfunktionen schreiben, um E-Mail und Passwort zu überprüfen. Wir können beispielsweise reguläre Ausdrücke verwenden, um die Legitimität der E-Mail zu überprüfen, die Zeichenfolgenlänge verwenden, um die Stärke des Passworts zu überprüfen usw.

4. Daten in die MySQL-Datenbank einfügen
Sobald wir die vom Benutzer eingegebenen Daten überprüft haben, können wir sie in die MySQL-Datenbank einfügen. Hier ist ein Beispielcode zum Einfügen von Benutzerdaten in die Datenbank:

Futurebd5a1e13576e3bda78550ab59ba3a990 insertUser(String username, String email, String password) async {
final conn = waiting connectToDatabase();

final sql = 'INSERT INTO users (Benutzername, E-Mail, Passwort) VALUES (?, ?, ?)';
Endwerte = [Benutzername, E-Mail, Passwort];

await conn.query(sql, Values);

await conn.close( );
}

Beim Einfügen von Daten verwenden wir „?“ als Platzhalter und übergeben dann den tatsächlichen Wert an den zweiten Parameter der Abfragemethode. Dadurch werden SQL-Injection-Angriffe vermieden.

5. Vollständiger Beispielcode
Das Folgende ist ein vollständiger Beispielcode, der zeigt, wie MySQL zur Implementierung der Dateneingabevalidierung in Dart verwendet wird.

import 'package:mysql1/mysql1.dart';

bool isUsernameValid(String username) {
// Logik zur Überprüfung des Benutzernamens
}

bool isEmailValid(String email) {
// Logik zur Überprüfung der E-Mail
}

bool isPasswordValid(String Password) {
// Logik zur Überprüfung des Passworts
}

Futureb12db66feab07ca85c5e0979380c29b8 connectToDatabase() async {
final Settings = ConnectionSettings(

host: 'localhost',
port: 3306,
user: 'root',
password: 'password',
db: 'database_name',

);

final conn = waiting MySqlConnection.connect( Settings );
return conn;
}

Futurebd5a1e13576e3bda78550ab59ba3a990 insertUser(String username, String email, String passwort) async {
final conn = waiting connectToDatabase();

final sql = 'INSERT INTO users (username, email , Passwort) VALUES (?, ?, ?)';
Endwerte = [Benutzername, E-Mail, Passwort];

await conn.query(sql, Values);

await conn.close();
}

void main() async {
final username = 'test';
final email = 'test@example.com';
final password = 'password';

if (!isUsernameValid(username)) {

print('Invalid username');
return;

}

if (!isEmailValid(email)) {

print('Invalid email');
return;

}

if (!isPasswordValid(password)) {

print('Invalid password');
return;

}

await insertUser(username, email, password);

print('Benutzer erfolgreich eingefügt ' );
}

6. Zusammenfassung
In diesem Artikel wird erläutert, wie Sie mit MySQL die Funktion zur Überprüfung der Dateneingabe in Dart implementieren. Wir haben zunächst eine Verbindung zur Datenbank hergestellt und dann eine Validierungsfunktion geschrieben, um die vom Benutzer eingegebenen Daten zu validieren. Abschließend werden die Benutzerdaten in die Datenbank eingefügt. Dieses Beispiel ist nur ein einfaches Beispiel und kann entsprechend den tatsächlichen Anforderungen erweitert und geändert werden. Ich hoffe, dieser Artikel ist hilfreich für Sie!

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Dateneingabevalidierungsfunktion in Dart mithilfe von MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn