Bagaimana untuk melaksanakan fungsi pengesahan input data dalam Dart menggunakan MySQL

WBOY
Lepaskan: 2023-07-30 16:25:09
asal
1447 orang telah melayarinya

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
Salin selepas log masuk

);

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 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 < 4 || nama pengguna .length > 20) {

host: 'localhost',
port: 3306,
user: 'root',
password: 'password',
db: 'database_name',
Salin selepas log masuk
Salin selepas log masuk

}

// 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;
Salin selepas log masuk
Salin selepas log masuk

}

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

}

Future connectToDatabase() async {

tetapan akhir = ConnectionSettings(

return false;
Salin selepas log masuk
Salin selepas log masuk

Connection

); );

return conn;

}


Future 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',
Salin selepas log masuk
Salin selepas log masuk
} . ' );

}

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!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!