Cara melaksanakan fungsi pengesahan input data dalam Dart menggunakan MySQL
Pengesahan input data adalah bahagian yang sangat penting semasa membangunkan aplikasi web. MySQL ialah pangkalan data hubungan yang biasa digunakan, dan Dart ialah bahasa pembangunan web yang popular. Artikel ini akan memperkenalkan cara menggunakan MySQL untuk melaksanakan pengesahan input data dalam Dart.
1. Persediaan persekitaran
Pertama, kita perlu memasang pangkalan data MySQL dan mencipta pangkalan data dan jadual data yang sepadan untuk menyimpan data yang dimasukkan oleh pengguna. Anda boleh menggunakan pernyataan SQL berikut untuk mencipta jadual data:
CREATE TABLE pengguna (
id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(50) NOT NULL, password VARCHAR(50) NOT NULL
);
Dalam Dart, kami menggunakan perpustakaan dart_mysql untuk menyambung ke pangkalan data MySQL. Tambahkan dependencies berikut dalam fail pubspec.yaml:
dependencies:
mysql1: ^0.15.0
Kemudian pasang dependencies dengan menjalankan flutter pub get.
2 Sambung ke pangkalan data MySQL
Dalam kod Dart, kita perlu mengimport perpustakaan mysql1 dan membuat sambungan ke pangkalan data. Berikut ialah contoh kod untuk menyambung ke pangkalan data MySQL:
import 'package:mysql1/mysql1.dart';
Future
tetapan akhir = ConnectionSettings(
); conn = tunggu MySqlConnection.connect(settings);
return conn;}
3. Pengesahan input data
bool isUsernameValid(String username) {
jika (nama pengguna.length < 4 || nama pengguna .length > 20) {
host: 'localhost', port: 3306, user: 'root', password: 'password', db: 'database_name',
// Nama pengguna hanya boleh mengandungi huruf, nombor dan garis bawah
regex akhir = RegExp(r'^[a-zA-Z0-9_]+$'); jika ( ! regex.hasMatch(nama pengguna)) {
return false;
return true;
}
Begitu juga, kami boleh menulis fungsi pengesahan lain untuk mengesahkan e-mel dan kata laluan. Sebagai contoh, kami boleh menggunakan ungkapan biasa untuk mengesahkan kesahihan e-mel, menggunakan panjang rentetan untuk mengesahkan kekuatan kata laluan, dsb.
4 Masukkan data ke dalam pangkalan data MySQL
Setelah kami mengesahkan data yang dimasukkan oleh pengguna, kami boleh memasukkannya ke dalam pangkalan data MySQL. Berikut ialah contoh kod untuk memasukkan data pengguna ke dalam pangkalan data:
Future
final sql = 'INSERT INTO users (nama pengguna, e-mel, kata laluan) NILAI (?, ?, ?)';
tunggu conn.query(sql, nilai);
tunggu conn.close( );
}
Apabila memasukkan data, kami menggunakan "?" sebagai pemegang tempat, dan kemudian menghantar nilai sebenar kepada parameter kedua kaedah pertanyaan. Ini mengelakkan serangan suntikan SQL.
5. Kod sampel lengkap
Berikut ialah kod contoh lengkap yang menunjukkan cara menggunakan MySQL untuk melaksanakan pengesahan input data dalam Dart.
import 'package:mysql1/mysql1.dart';
bool isUsernameValid(String username) {
// Logik untuk mengesahkan nama pengguna}
bool isEmailValid(String e-mel) {🜜 // Logik untuk mengesahkan nama pengguna
bool isEmailValid(E-mel rentetan) {🜜 // Logik e-mel
bool isPasswordValid(kata laluan rentetan) {
}
Future
return false;
return conn;
}
Future
final conn = await connectToDatabase();
final sql = 'MASUKKAN KE DALAM pengguna, (nama pengguna, e-mel kata laluan) NILAI (?, ?, ?)';
nilai akhir = [nama pengguna, e-mel, kata laluan];
tunggu conn.query(sql, nilai);
}
void main() async {
nama pengguna akhir = 'ujian';
kata laluan akhir = 'kata laluan';
jika (!isUsernameValid(nama pengguna)) {
host: 'localhost', port: 3306, user: 'root', password: 'password', db: 'database_name',
}
6. Ringkasan
Artikel ini memperkenalkan cara menggunakan MySQL untuk melaksanakan fungsi pengesahan input data dalam Dart. Kami mula-mula membuat sambungan ke pangkalan data dan kemudian menulis fungsi pengesahan untuk mengesahkan data yang dimasukkan oleh pengguna. Akhirnya, data pengguna dimasukkan ke dalam pangkalan data. Contoh ini hanyalah contoh mudah dan boleh dipanjangkan dan diubah suai mengikut keperluan sebenar. Semoga artikel ini dapat membantu anda!Atas ialah kandungan terperinci Bagaimana untuk melaksanakan fungsi pengesahan input data dalam Dart menggunakan MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!