Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk melaksanakan fungsi pengesahan input data dalam Dart menggunakan MySQL

Bagaimana untuk melaksanakan fungsi pengesahan input data dalam Dart menggunakan MySQL

WBOY
WBOYasal
2023-07-30 16:25:091381semak imbas

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';

Futureb12db66feab07ca85c5e0979380c29b8 connectToDatabase() async {
tetapan akhir = ConnectionSettings(

); conn = tunggu MySqlConnection.connect(settings);

return conn;

}

3. Pengesahan input data

Sebelum kami memproses data, kami perlu mengesahkan sama ada data yang dimasukkan oleh pengguna memenuhi keperluan. Berikut ialah contoh kod untuk mengesahkan sama ada nama pengguna itu sah:


bool isUsernameValid(String username) {

// Panjang nama pengguna mestilah antara 4 dan 20 aksara

jika (nama pengguna.length b4a0aa52d7e8d2f643df8100e411519e 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:


Futurebd5a1e13576e3bda78550ab59ba3a990 insertUser(String username, String email, String password) async {

final conn = await connectToDatabase();


final sql = 'INSERT INTO users (nama pengguna, e-mel, kata laluan) NILAI (?, ?, ?)';

nilai akhir = [nama pengguna, e-mel, kata laluan];


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) {

// Logik untuk mengesahkan kata laluan

}

Futureb12db66feab07ca85c5e0979380c29b8 connectToDatabase() async {

tetapan akhir = ConnectionSettings(

return false;

Connection

); );

return conn;

}


Futurebd5a1e13576e3bda78550ab59ba3a990 insertUser(String username, String email, String password) async {
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);

tunggu conn.close();

}

void main() async {
nama pengguna akhir = 'ujian';

e-mel akhir = 'test@example.com';

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn