


Comment implémenter la fonction de validation de saisie de données dans Dart à l'aide de MySQL
Comment implémenter la fonction de validation de saisie de données dans Dart à l'aide de MySQL
Lors du développement d'applications Web, la validation de saisie de données est une partie très importante. MySQL est une base de données relationnelle couramment utilisée et Dart est un langage de développement Web populaire. Cet article explique comment utiliser MySQL pour implémenter la validation des entrées de données dans Dart.
1. Configuration de l'environnement
Tout d'abord, nous devons installer la base de données MySQL et créer une base de données et la table de données correspondante pour stocker les données saisies par l'utilisateur. Vous pouvez utiliser l'instruction SQL suivante pour créer une table de données :
Utilisateurs CREATE TABLE (
id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(50) NOT NULL, password VARCHAR(50) NOT NULL
) ;
Dans Dart, nous utilisons la bibliothèque dart_mysql pour nous connecter à la base de données MySQL. Ajoutez les dépendances suivantes dans le fichier pubspec.yaml :
dependencies:
mysql1 : ^0.15.0
Ensuite, installez les dépendances en exécutant flutter pub get.
2. Connectez-vous à la base de données MySQL
Dans le code Dart, nous devons d'abord importer la bibliothèque mysql1 et créer une connexion à la base de données. Voici un exemple de code pour se connecter à une base de données MySQL :
import 'package:mysql1/mysql1.dart';
Future
final settings = ConnectionSettings(
host: 'localhost', port: 3306, user: 'root', password: 'password', db: 'database_name',
);
final conn = wait MySqlConnection.connect(settings);
return conn;
}
3. Vérification de la saisie des données
Avant de traiter les données, nous devons vérifier si les données saisies par l'utilisateur répondent aux exigences. Voici un exemple de code pour vérifier si le nom d'utilisateur est légal :
bool isUsernameValid(String username) {
// La longueur du nom d'utilisateur doit être comprise entre 4 et 20 caractères
if (username.length < 4 || username .length > 20) {
return false;
}
// Le nom d'utilisateur ne peut contenir que des lettres, des chiffres et des traits de soulignement
final regex = RegExp(r'^[a-zA-Z0-9_]+$');
if ( ! regex.hasMatch(username)) {
return false;
}
return true;
}
De même, nous pouvons écrire d'autres fonctions de vérification pour vérifier l'e-mail et le mot de passe. Par exemple, nous pouvons utiliser des expressions régulières pour vérifier la légitimité de l'e-mail, utiliser la longueur de la chaîne pour vérifier la force du mot de passe, etc.
4. Insérer des données dans la base de données MySQL
Une fois que nous avons vérifié les données saisies par l'utilisateur, nous pouvons les insérer dans la base de données MySQL. Voici un exemple de code pour insérer les données utilisateur dans la base de données :
Future
final conn = wait connectToDatabase();
final sql = 'INSERT INTO users (nom d'utilisateur, email, mot de passe) VALUES (?, ?, ?)';
valeurs finales = [nom d'utilisateur, email, mot de passe];
attendre conn.query(sql, valeurs);
attendre conn.close(
}
Lors de l'insertion de données, nous utilisons "?" comme espace réservé, puis transmettons la valeur réelle au deuxième paramètre de la méthode de requête. Cela évite les attaques par injection SQL.
5. Exemple de code complet
Ce qui suit est un exemple de code complet qui montre comment utiliser MySQL pour implémenter la validation des entrées de données dans Dart.
import 'package:mysql1/mysql1.dart';
bool isUsernameValid(String username) {
// Logique pour vérifier le nom d'utilisateur
}
bool isEmailValid(String email) {
// Logique pour vérifier l'e-mail
}
bool isPasswordValid(String password) {
// Logique pour vérifier le mot de passe
}
Future
paramètres finaux = ConnectionSettings(
host: 'localhost', port: 3306, user: 'root', password: 'password', db: 'database_name',
);
final conn = wait MySqlConnection.connect( settings );
return conn;
}
Future
final conn = wait connectToDatabase();
final sql = 'INSERT INTO utilisateurs (nom d'utilisateur, email, mot de passe) VALUES (?, ?, ?)';
valeurs finales = [nom d'utilisateur, email, mot de passe];
attendre conn.query(sql, valeurs);
attendre 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(mot de passe)) {
print('Invalid password'); return;
}
await insertUser(username, email, password);
print('Utilisateur inséré avec succès ' );
}
6. Résumé
Cet article présente comment utiliser MySQL pour implémenter la fonction de vérification de la saisie des données dans Dart. Nous avons d'abord créé une connexion à la base de données puis écrit une fonction de validation pour valider les données saisies par l'utilisateur. Enfin, les données utilisateur sont insérées dans la base de données. Cet exemple n'est qu'un exemple simple et peut être étendu et modifié en fonction des besoins réels. J'espère que cet article vous sera utile !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds



La page est vide après que PHP se connecte à MySQL, et la raison pour laquelle la fonction Die () échoue. Lorsque vous apprenez la connexion entre PHP et la base de données MySQL, vous rencontrez souvent des choses déroutantes ...

Php ...

De nombreux développeurs de sites Web sont confrontés au problème de l'intégration de Node.js ou des services Python sous l'architecture de lampe: la lampe existante (Linux Apache MySQL PHP) a besoin d'un site Web ...

Comment partager la même page du côté PC et mobile et gérer les problèmes de cache? Dans l'environnement Nginx PHP MySQL construit à l'aide de l'arrière-plan Baota, comment faire le côté PC et ...

"Debianstrings" n'est pas un terme standard, et sa signification spécifique n'est pas encore claire. Cet article ne peut pas commenter directement la compatibilité de son navigateur. Cependant, si "DebianStrings" fait référence à une application Web exécutée sur un système Debian, sa compatibilité du navigateur dépend de l'architecture technique de l'application elle-même. La plupart des applications Web modernes se sont engagées à compatibilité entre les navigateurs. Cela repose sur les normes Web suivantes et l'utilisation de technologies frontales bien compatibles (telles que HTML, CSS, JavaScript) et les technologies back-end (telles que PHP, Python, Node.js, etc.). Pour s'assurer que l'application est compatible avec plusieurs navigateurs, les développeurs doivent souvent effectuer des tests croisés et utiliser la réactivité

Dockerfile Best Practice Pour construire l'apprentissage de l'environnement LNMP Pendant Docker, de nombreux développeurs essaient de construire leur propre LNMP (Linux, Nginx, MySQL, PHP) ...

Comparaison des files d'attente Redis et de la stabilité de MySQL: Pourquoi Redis est-il sujet à la perte de données? Dans l'environnement de développement, en utilisant des cadres Php7.2 et ThinkPhp, nous sommes souvent confrontés au choix de la coopération ...

Utiliser Django et MySQL pour traiter de grands volumes de données lors de l'utilisation de bases de données Django et MySQL, si votre volume de données atteint des centaines de milliers à un ou deux millions ...
