当前位置: 首页 > news >正文

淄博做网站公司有哪些友情链接交换条件

淄博做网站公司有哪些,友情链接交换条件,西安app制作公司,蓬莱网站建设哪家好前言 在之前的两篇博客中QT C实战:实现用户登录页面及多个界面跳转、QT C实践|超详细数据库的连接和增删改查操作|附源码分别详细讲解了:登录界面的制作(UI布局、页面跳转、登录逻辑等)、QT如何连接Mysql数据库,并进行…

前言

在之前的两篇博客中QT C++实战:实现用户登录页面及多个界面跳转、QT C++实践|超详细数据库的连接和增删改查操作|附源码分别详细讲解了:登录界面的制作(UI布局、页面跳转、登录逻辑等)、QT如何连接Mysql数据库,并进行增删改查。

在前者登录界面的实现中,我们是把用户名和密码设死在代码内部的,不涉及到数据库,虽然这样很简单,但是实际过程中还是不够人性化。今天,我们要将这两个知识点结合起来,如何在登陆中连接数据库,实现用户登录。

Tips:本篇博客默认已经阅读前两篇博客,并已经拥有如何连接数据库和设计登录的UI界面的基础,固省略很多细节,主要讲“变”。强烈建议先阅读前两篇博客!

一、实现

1.1:前言

  • 在登录界面连接数据库,调用connection.h中的createConnection()创建数据库连接。
  • 在关闭界面的函数内,关闭数据库,释放资源:
    if (db.isOpen()) {db.close();
    }// 然后,从连接池中移除该连接
    QSqlDatabase::removeDatabase("connection1");
    
  • 遍历数据库,将用户名、密码依次和数据库中的信息进行对比,若有一样,则可以进入主界面。
    💁🏻‍♀️使用 QSqlQuery 来执行一个查询,并使用循环来遍历结果集

1.2:具体

首先在登陆界面Login.cpp的构造函数中加入下面创建数据库连接的代码:

//创建数据库连接if (!createConnection()) {return;}db = QSqlDatabase::database("connection1");//

注意db是定义在头文件中公共成员变量中的:

public:Login(QWidget *parent = nullptr);~Login();QSqlDatabase db;

再就是主要修改登录界面的登录按钮的槽函数:

//登录按钮对应槽函数:登陆成功跳转到主功能界面or管理员界面
void Login::inlog_clicked() {//获取用户名和密码输入框中数据QString nameString = ui.name->text();QString pswdString = ui.pswd->text();//遍历数据库int non_flag = 1;//标志数据库中没有该用户信息QSqlQuery query(db);query.exec("select * from user");//执行sql语句bool success = query.exec("SELECT * FROM user");if (success) {while (query.next()) {//获取QString uName = query.value(1).toString();QString uPwd = query.value(2).toString();//QMessageBox::about(this, "显示", "用户名:"+uName +"密码"+uPwd);//比较if (nameString == uName && pswdString == uPwd) {//创建功能主界面并显示new_QT_python* w = new new_QT_python();this->hide();non_flag = 0;w->show();db.close();QSqlDatabase::removeDatabase("connection1");break;}}if (non_flag) {QMessageBox::about(this, "警告", "用户名或密码错误");}}else {// 查询执行失败QSqlError error = query.lastError();QString errorMessage = error.text();QMessageBox::about(this, "数据库错误", "查询失败" + errorMessage);}//if (nameString == QString::fromLocal8Bit("admin")&& pswdString == QString::fromLocal8Bit("123456")) {//	Admin* w = new Admin();//	this->close();//	w->show();//}//else if (nameString == QString::fromLocal8Bit("user") && pswdString == QString::fromLocal8Bit("111111")) {//	//创建功能主界面并显示//	new_QT_python* w = new new_QT_python();//	this->close();//	w->show();//}//else {//	QMessageBox::about(this, "警告", "用户名或密码错误");//	return;//}
}
http://www.hkea.cn/news/29772/

相关文章:

  • 制作网站时怎样做滚动字幕新网站多久会被百度收录
  • 余姚物流做网站微信指数是搜索量吗
  • 怎样做网站轮播今日国内重大新闻事件
  • 想给大学做网站百度网盘搜索神器
  • jsp网站开发论文官方app下载安装
  • 关于机场建设的网站今日疫情最新情况
  • 网站域名注册服务商google浏览器官方
  • 通过网站开发工具怎么改自动跳网站百度指数有哪些功能
  • 可以发锚文本的网站百度搜索官方网站
  • 东莞网站建设企慕简述如何优化网站的方法
  • 可以做网站的公司seo外包
  • 自己怎么做网站视频赚钱5g网络优化培训
  • 数据库修改网站管理员密码seo网站有优化培训吗
  • 福田做商城网站建设找哪家公司好抖音怎么运营和引流
  • 厘米售卡站怎么做网站禁止搜索引擎收录的方法
  • 网站首页滚动图片怎么做谷歌搜索关键词排名
  • 嵩县网站开发友情链接获取的途径有哪些
  • 国家企业信息公示网(广东)海南快速seo排名优化
  • 高端网站设计 上海徐州seo排名公司
  • 泰安网站建设公司排名石家庄最新消息
  • 域名只做邮箱没网站要备案吗常见的网络推广方式包括
  • 昆山建设局网站360搜索首页
  • 正常做网站多少钱无锡网站制作无锡做网站
  • php做网站csdn网站seo公司哪家好
  • 今日头条建站工具何鹏seo
  • wordpress 培训模板优化落实疫情防控新十条
  • 关于做外汇现货的网站太原整站优化排名外包
  • 星悦做任务网站是新网站百度收录
  • 十大营销网站seo关键词查询工具
  • 怎么查询网站所有关键词靠谱的广告联盟