diff --git a/src/ChangShaTour/ChangShaTour.pro.user b/src/ChangShaTour/ChangShaTour.pro.user index ba3d579..4a7ba2b 100644 --- a/src/ChangShaTour/ChangShaTour.pro.user +++ b/src/ChangShaTour/ChangShaTour.pro.user @@ -1,10 +1,10 @@ - + EnvironmentId - {61ba832e-6c30-4ab6-b0b8-ace44f46ca0c} + {4109ff11-a646-43d1-9619-aeb32783df6e} ProjectExplorer.Project.ActiveTarget @@ -44,8 +44,8 @@ true 0 8 - false - 0 + true + 1 true true true @@ -71,7 +71,7 @@ 0 0 - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MSVC2017_64bit-Debug + E:/ChangShaTour/Trip-in-Chang-sha/build-ChangShaTour-Desktop_Qt_5_14_2_MSVC2017_64bit-Debug true @@ -119,7 +119,7 @@ 2 - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MSVC2017_64bit-Release + E:/ChangShaTour/Trip-in-Chang-sha/build-ChangShaTour-Desktop_Qt_5_14_2_MSVC2017_64bit-Release true @@ -167,7 +167,7 @@ 0 - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MSVC2017_64bit-Profile + E:/ChangShaTour/Trip-in-Chang-sha/build-ChangShaTour-Desktop_Qt_5_14_2_MSVC2017_64bit-Profile true @@ -287,8 +287,8 @@ 2 - Qt4ProjectManager.Qt4RunConfiguration:D:/ChangShaTour/ChangShaTour.pro - D:/ChangShaTour/ChangShaTour.pro + Qt4ProjectManager.Qt4RunConfiguration:C:/Users/13648/Desktop/TourInChangSha/src/ChangShaTour/ChangShaTour.pro + C:/Users/13648/Desktop/TourInChangSha/src/ChangShaTour/ChangShaTour.pro false @@ -299,256 +299,13 @@ false true - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MSVC2017_64bit-Debug + E:/ChangShaTour/Trip-in-Chang-sha/build-ChangShaTour-Desktop_Qt_5_14_2_MSVC2017_64bit-Debug 1 ProjectExplorer.Project.Target.1 - - Desktop Qt 5.14.2 MinGW 32-bit - Desktop Qt 5.14.2 MinGW 32-bit - qt.qt5.5142.win32_mingw73_kit - 0 - 0 - 0 - - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MinGW_32_bit-Debug - - - true - QtProjectManager.QMakeBuildStep - true - - false - false - false - - - true - Qt4ProjectManager.MakeStep - - false - - - false - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - - true - clean - - false - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Debug - Qt4ProjectManager.Qt4BuildConfiguration - 2 - - - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MinGW_32_bit-Release - - - true - QtProjectManager.QMakeBuildStep - false - - false - false - true - - - true - Qt4ProjectManager.MakeStep - - false - - - false - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - - true - clean - - false - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Release - Qt4ProjectManager.Qt4BuildConfiguration - 0 - - - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MinGW_32_bit-Profile - - - true - QtProjectManager.QMakeBuildStep - true - - false - true - true - - - true - Qt4ProjectManager.MakeStep - - false - - - false - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - - true - clean - - false - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Profile - Qt4ProjectManager.Qt4BuildConfiguration - 0 - - 3 - - - 0 - Deploy - Deploy - ProjectExplorer.BuildSteps.Deploy - - 1 - ProjectExplorer.DefaultDeployConfiguration - - 1 - - - dwarf - - cpu-cycles - - - 250 - - -e - cpu-cycles - --call-graph - dwarf,4096 - -F - 250 - - -F - true - 4096 - false - false - 1000 - - true - - false - false - false - false - true - 0.01 - 10 - true - kcachegrind - 1 - 25 - - 1 - true - false - true - valgrind - - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - - 2 - - - ProjectExplorer.CustomExecutableRunConfiguration - - - false - - false - true - false - false - true - - - - 1 - - - - ProjectExplorer.Project.Target.2 Desktop Qt 5.14.2 MinGW 64-bit Desktop Qt 5.14.2 MinGW 64-bit @@ -557,7 +314,7 @@ 0 0 - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MinGW_64_bit-Debug + E:/ChangShaTour/Trip-in-Chang-sha/build-ChangShaTour-Desktop_Qt_5_14_2_MinGW_64_bit-Debug true @@ -605,7 +362,7 @@ 2 - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MinGW_64_bit-Release + E:/ChangShaTour/Trip-in-Chang-sha/build-ChangShaTour-Desktop_Qt_5_14_2_MinGW_64_bit-Release true @@ -653,7 +410,7 @@ 0 - D:/Study/SE/project/code/Trip-in-Chang-sha-main-4/Trip-in-Chang-sha-main/build-ChangShaTour-Desktop_Qt_5_14_2_MinGW_64_bit-Profile + E:/ChangShaTour/Trip-in-Chang-sha/build-ChangShaTour-Desktop_Qt_5_14_2_MinGW_64_bit-Profile true @@ -792,7 +549,7 @@ ProjectExplorer.Project.TargetCount - 3 + 2 ProjectExplorer.Project.Updater.FileVersion diff --git a/src/ChangShaTour/addhistory.cpp b/src/ChangShaTour/addhistory.cpp index 0c47a92..152be19 100644 --- a/src/ChangShaTour/addhistory.cpp +++ b/src/ChangShaTour/addhistory.cpp @@ -1,17 +1,12 @@ #include "addhistory.h" -#include "cglobal.h" -//将店铺的连接加入history数据库 +//将店铺的链接加入history数据库 AddHistory::AddHistory() { } void AddHistory::add(QString url) { - connect=new DatabaseConnector(); - QString database="user"; - limit=10; - connect->connectToDatabase(database); - QSqlQuery query(db); + QSqlQuery query(userDb); query.prepare("select historyId from history where url=?"); query.addBindValue(url); query.exec(); @@ -21,8 +16,6 @@ void AddHistory::add(QString url) query.prepare("update history set createdtime = now() where url=?"); query.addBindValue(url); query.exec(); - query.finish(); - connect->closeDatabase(); return ; } query.prepare("select count(*) from history where id = ?"); @@ -50,7 +43,5 @@ void AddHistory::add(QString url) query.addBindValue(url); query.exec(); } - query.finish(); - connect->closeDatabase(); } diff --git a/src/ChangShaTour/addhistory.h b/src/ChangShaTour/addhistory.h index 9edceb8..507e9a6 100644 --- a/src/ChangShaTour/addhistory.h +++ b/src/ChangShaTour/addhistory.h @@ -1,8 +1,8 @@ -#ifndef ADDHISTORY_H +#ifndef ADDHISTORY_H #define ADDHISTORY_H #include #include -#include +#include "cglobal.h" class AddHistory { @@ -11,7 +11,6 @@ public: void add(QString id); private: int limit; - DatabaseConnector *connect; }; #endif // ADDHISTORY_H diff --git a/src/ChangShaTour/cglobal.cpp b/src/ChangShaTour/cglobal.cpp index 094fd19..4f2bf5c 100644 --- a/src/ChangShaTour/cglobal.cpp +++ b/src/ChangShaTour/cglobal.cpp @@ -1,6 +1,10 @@ -#include "cglobal.h" +#include "cglobal.h" qint64 Id; +QSqlDatabase meituanDb; +QSqlDatabase userDb; +QSqlDatabase listDb; + cglobal::cglobal() { diff --git a/src/ChangShaTour/cglobal.h b/src/ChangShaTour/cglobal.h index bb742fb..c5d5c12 100644 --- a/src/ChangShaTour/cglobal.h +++ b/src/ChangShaTour/cglobal.h @@ -1,8 +1,14 @@ -#ifndef CGLOBAL_H +#ifndef CGLOBAL_H #define CGLOBAL_H #include +#include //全局变量定义文件,include该文件即可获得用户Id extern qint64 Id; + +extern QSqlDatabase meituanDb; +extern QSqlDatabase userDb; +extern QSqlDatabase listDb; + class cglobal { public: diff --git a/src/ChangShaTour/historywidget.cpp b/src/ChangShaTour/historywidget.cpp index abbe7c4..ac6bd48 100644 --- a/src/ChangShaTour/historywidget.cpp +++ b/src/ChangShaTour/historywidget.cpp @@ -24,8 +24,6 @@ HistoryWidget::HistoryWidget(QWidget *parent) : btnList[i] = new QPushButton(); } - userConn = new DatabaseConnector(); - //获取用户历史信息存入historyList getHistory(); //根据历史信息获取店铺信息填入nameList中 @@ -60,9 +58,7 @@ HistoryWidget::~HistoryWidget() void HistoryWidget::getHistory() { - QString userDatabase="user"; - userConn->connectToDatabase(userDatabase); - QSqlQuery historyQuery(db); + QSqlQuery historyQuery(userDb); historyQuery.prepare("select url from history where id=:id order by createdtime DESC"); historyQuery.bindValue(":id", Id); @@ -72,17 +68,12 @@ void HistoryWidget::getHistory() // qDebug() << historyQuery.value("url").value(); historyList.append(historyQuery.value("url").value()); } - historyQuery.finish(); - userConn->closeDatabase(); } void HistoryWidget::getShops() { - QString shopDatabase="meituan";// - shopConn = new DatabaseConnector(); - shopConn->connectToDatabase(shopDatabase); - QSqlQuery shopQuery(db); + QSqlQuery shopQuery(meituanDb); for (int i = 0; i < historyList.length(); i++) { @@ -93,8 +84,6 @@ void HistoryWidget::getShops() // qDebug() << shopQuery.value("title").value(); nameList.append(shopQuery.value("title").value()); } - shopQuery.finish(); - shopConn->closeDatabase(); } void HistoryWidget::setBtns() diff --git a/src/ChangShaTour/historywidget.h b/src/ChangShaTour/historywidget.h index e59de87..07f7dd1 100644 --- a/src/ChangShaTour/historywidget.h +++ b/src/ChangShaTour/historywidget.h @@ -8,7 +8,6 @@ #include #include "webwidget.h" #include "cglobal.h" -#include "databaseconnector.h" #include "addhistory.h" #if _MSC_VER >= 1600 @@ -52,9 +51,6 @@ private: QStringList historyList; //店铺url QStringList nameList; //店铺名称 - - DatabaseConnector *userConn; - DatabaseConnector *shopConn; }; #endif // HISTORYWIDGET_H diff --git a/src/ChangShaTour/loginmanager.cpp b/src/ChangShaTour/loginmanager.cpp index 4502c84..fa0744e 100644 --- a/src/ChangShaTour/loginmanager.cpp +++ b/src/ChangShaTour/loginmanager.cpp @@ -1,5 +1,4 @@ #include "loginmanager.h" -#include "cglobal.h" LoginManager::LoginManager() { @@ -7,11 +6,7 @@ LoginManager::LoginManager() } bool LoginManager::loginVerify(QString account,QString password) { - connect=new DatabaseConnector(); - QString database="user"; - connect->connectToDatabase(database); - - QSqlQuery query(db); + QSqlQuery query(userDb); query.prepare("select id,password from account where email=?"); query.addBindValue(account); query.exec(); @@ -19,17 +14,12 @@ bool LoginManager::loginVerify(QString account,QString password) QString passwordget=query.value("password").toString(); Id=query.value("id").toInt(); qDebug()<closeDatabase(); return true; } else { - query.finish(); - connect->closeDatabase(); return false; } diff --git a/src/ChangShaTour/loginmanager.h b/src/ChangShaTour/loginmanager.h index 0835238..040fba0 100644 --- a/src/ChangShaTour/loginmanager.h +++ b/src/ChangShaTour/loginmanager.h @@ -1,7 +1,7 @@ #ifndef LOGINMANAGER_H #define LOGINMANAGER_H -#include "databaseconnector.h" +#include "cglobal.h" #include #include #include @@ -13,7 +13,6 @@ public: LoginManager(); bool loginVerify(QString account,QString password); private: - DatabaseConnector * connect; }; diff --git a/src/ChangShaTour/main.cpp b/src/ChangShaTour/main.cpp index ed639b8..7381511 100644 --- a/src/ChangShaTour/main.cpp +++ b/src/ChangShaTour/main.cpp @@ -1,6 +1,20 @@ #include "mainwindow.h" - #include +#include "cglobal.h" +#include + + +/*QSqlDatabase connectToDatabase(QSqlDatabase db, QString database, QString connectionName) +{ + db = QSqlDatabase::addDatabase("QMYSQL", connectionName); //连接的MYSQL的数据库驱动 + db.setHostName("121.36.100.63"); //主机名 + db.setPort(3306); //端口 + db.setDatabaseName(database); //数据库名 + db.setUserName("mkl"); //用户名 + db.setPassword("010512"); //密码 + db.open(); + return db; +}*/ int main(int argc, char *argv[]) { @@ -19,6 +33,35 @@ int main(int argc, char *argv[]) qDebug("Open failed"); } + /*connectToDatabase(meituanDb, "meituan", "meituanConnection"); + connectToDatabase(userDb, "user", "userConnection"); + connectToDatabase(listDb, "list", "listConnection");*/ + + meituanDb = QSqlDatabase::addDatabase("QMYSQL", "meituanConnection"); //连接的MYSQL的数据库驱动 + meituanDb.setHostName("121.36.100.63"); //主机名 + meituanDb.setPort(3306); //端口 + meituanDb.setDatabaseName("meituan"); //数据库名 + meituanDb.setUserName("mkl"); //用户名 + meituanDb.setPassword("010512"); //密码 + meituanDb.open(); + + userDb = QSqlDatabase::addDatabase("QMYSQL", "userConnection"); //连接的MYSQL的数据库驱动 + userDb.setHostName("121.36.100.63"); //主机名 + userDb.setPort(3306); //端口 + userDb.setDatabaseName("user"); //数据库名 + userDb.setUserName("mkl"); //用户名 + userDb.setPassword("010512"); //密码 + userDb.open(); + + listDb = QSqlDatabase::addDatabase("QMYSQL", "listConnection"); //连接的MYSQL的数据库驱动 + listDb.setHostName("121.36.100.63"); //主机名 + listDb.setPort(3306); //端口 + listDb.setDatabaseName("list"); //数据库名 + listDb.setUserName("mkl"); //用户名 + listDb.setPassword("010512"); //密码 + listDb.open(); + + MainWindow w; w.show(); return a.exec(); diff --git a/src/ChangShaTour/recommendwidget.cpp b/src/ChangShaTour/recommendwidget.cpp index 14bb75f..0f06c24 100644 --- a/src/ChangShaTour/recommendwidget.cpp +++ b/src/ChangShaTour/recommendwidget.cpp @@ -11,10 +11,7 @@ RecommendWidget::RecommendWidget(QWidget *parent) : column = 3; history=new AddHistory(); web = new WebWidget(); - connector = new DatabaseConnector(); - QString database="meituan"; - connector->connectToDatabase(database); - QSqlQuery query(db); + QSqlQuery query(meituanDb); verLayout = new QVBoxLayout(); @@ -71,9 +68,6 @@ RecommendWidget::RecommendWidget(QWidget *parent) : } } - query.finish(); - connector->closeDatabase(); - //必须要在setWidget方法调用之前把subWidget中的layout设置好,否则显示不出来 scroll->setWidget(subWidget); @@ -171,16 +165,13 @@ void RecommendWidget::refresh() imgList.clear(); textList.clear(); - connector->connectToDatabase("meituan"); - QSqlQuery query(db); + QSqlQuery query(meituanDb); // query.exec("select * from csmeishi limit 2"); query.prepare("select * from food limit 36, :limit"); query.bindValue(":limit", row * column); queryDatabase(query); setBtns(); - query.finish(); - connector->closeDatabase(); qDebug()<<"refreshed"; } diff --git a/src/ChangShaTour/recommendwidget.h b/src/ChangShaTour/recommendwidget.h index 8e187d2..9ec1990 100644 --- a/src/ChangShaTour/recommendwidget.h +++ b/src/ChangShaTour/recommendwidget.h @@ -14,7 +14,7 @@ #include #include #include "webwidget.h" -#include "databaseconnector.h" +#include "cglobal.h" #include "imgdownloader.h" #include "addhistory.h" @@ -53,7 +53,6 @@ private: QStringList textList; QStringList idList; WebWidget *web; - DatabaseConnector * connector; QString currentUrl; QVBoxLayout *verLayout; diff --git a/src/ChangShaTour/registermanager.cpp b/src/ChangShaTour/registermanager.cpp index a8a9b79..52fe6cd 100644 --- a/src/ChangShaTour/registermanager.cpp +++ b/src/ChangShaTour/registermanager.cpp @@ -1,75 +1,61 @@ -#include "registermanager.h" - -RegisterManager::RegisterManager() -{ - -} - -bool RegisterManager::registerVerify(QString emailAddress, QString password, QString confirmPassword) -{ - if(emailAddress == "") - { - QMessageBox::warning(NULL, "警告", "请输入邮箱地址!", QMessageBox::Yes); - return false; - } - if(password == "") - { - QMessageBox::warning(NULL, "警告", "请输入密码!", QMessageBox::Yes); - return false; - } - if(confirmPassword == "") - { - QMessageBox::warning(NULL, "警告", "请确认密码!", QMessageBox::Yes); - return false; - } - - connect = new DatabaseConnector(); - QString database="user"; - connect->connectToDatabase(database); - - QSqlQuery query(db); - query.prepare("select password from account where email=?"); - query.addBindValue(emailAddress); - query.exec(); - - if(query.next()) - { - QMessageBox::warning(NULL, "警告", "该邮箱已被注册,请更换邮箱后重试!", QMessageBox::Yes); - query.finish(); - connect->closeDatabase(); - return false; - } - - if(password.length() < 6) - { - QMessageBox::warning(NULL, "警告", "密码过短,请输入长度为6~12位的密码!", QMessageBox::Yes); - query.finish(); - connect->closeDatabase(); - return false; - } - if(password.length() > 12) - { - QMessageBox::warning(NULL, "警告", "密码过长,请输入长度为6~12位的密码!", QMessageBox::Yes); - query.finish(); - connect->closeDatabase(); - return false; - } - if(QString::compare(password, confirmPassword, Qt::CaseSensitive)) - { - QMessageBox::warning(NULL, "警告", "确认密码错误,请检查无误后重试!", QMessageBox::Yes); - query.finish(); - connect->closeDatabase(); - return false; - } - - - query.prepare("INSERT INTO account(email, password) " - "VALUES (:email, :password)"); - query.bindValue(":email", emailAddress); - query.bindValue(":password", password); - query.exec(); - - query.finish(); - connect->closeDatabase(); - return true; -} +#include "registermanager.h" + +RegisterManager::RegisterManager() +{ + +} + +bool RegisterManager::registerVerify(QString emailAddress, QString password, QString confirmPassword) +{ + if(emailAddress == "") + { + QMessageBox::warning(NULL, "警告", "请输入邮箱地址!", QMessageBox::Yes); + return false; + } + if(password == "") + { + QMessageBox::warning(NULL, "警告", "请输入密码!", QMessageBox::Yes); + return false; + } + if(confirmPassword == "") + { + QMessageBox::warning(NULL, "警告", "请确认密码!", QMessageBox::Yes); + return false; + } + + QSqlQuery query(userDb); + query.prepare("select password from account where email=?"); + query.addBindValue(emailAddress); + query.exec(); + + if(query.next()) + { + QMessageBox::warning(NULL, "警告", "该邮箱已被注册,请更换邮箱后重试!", QMessageBox::Yes); + return false; + } + + if(password.length() < 6) + { + QMessageBox::warning(NULL, "警告", "密码过短,请输入长度为6~12位的密码!", QMessageBox::Yes); + return false; + } + if(password.length() > 12) + { + QMessageBox::warning(NULL, "警告", "密码过长,请输入长度为6~12位的密码!", QMessageBox::Yes); + return false; + } + if(QString::compare(password, confirmPassword, Qt::CaseSensitive)) + { + QMessageBox::warning(NULL, "警告", "确认密码错误,请检查无误后重试!", QMessageBox::Yes); + return false; + } + + + query.prepare("INSERT INTO account(email, password) " + "VALUES (:email, :password)"); + query.bindValue(":email", emailAddress); + query.bindValue(":password", password); + query.exec(); + + return true; +} diff --git a/src/ChangShaTour/registermanager.h b/src/ChangShaTour/registermanager.h index 2638888..ae8a9d6 100644 --- a/src/ChangShaTour/registermanager.h +++ b/src/ChangShaTour/registermanager.h @@ -1,24 +1,23 @@ -#ifndef REGISTERMANAGER_H -#define REGISTERMANAGER_H - -#include "databaseconnector.h" -#include -#include -#include - -#if _MSC_VER >= 1600 -#pragma execution_character_set("utf-8") -#endif - -class RegisterManager -{ -public: - RegisterManager(); - bool registerVerify(QString emailAddress, QString password, QString confirmPassword); - -private: - DatabaseConnector * connect; - -}; - -#endif // REGISTERMANAGER_H +#ifndef REGISTERMANAGER_H +#define REGISTERMANAGER_H + +#include "cglobal.h" +#include +#include +#include + +#if _MSC_VER >= 1600 +#pragma execution_character_set("utf-8") +#endif + +class RegisterManager +{ +public: + RegisterManager(); + bool registerVerify(QString emailAddress, QString password, QString confirmPassword); + +private: + +}; + +#endif // REGISTERMANAGER_H diff --git a/src/ChangShaTour/searchresultwidget.cpp b/src/ChangShaTour/searchresultwidget.cpp index 6d0f735..38e417c 100644 --- a/src/ChangShaTour/searchresultwidget.cpp +++ b/src/ChangShaTour/searchresultwidget.cpp @@ -31,7 +31,6 @@ SearchResultWidget::SearchResultWidget(QWidget *parent) : QWidget(parent) up = new QPushButton("上一页"); down = new QPushButton("下一页"); - connector = new DatabaseConnector(); //设置布局 this->setLayout(mainLayout); @@ -79,8 +78,7 @@ void SearchResultWidget::sendInput(QString input) void SearchResultWidget::getTotalNum() { //查询条目数 - connector->connectToDatabase("meituan"); - QSqlQuery query(db); + QSqlQuery query(meituanDb); query.prepare("select count(*) as num from food where title like :segment"); query.bindValue(":segment", "%" + segment + "%"); @@ -89,9 +87,6 @@ void SearchResultWidget::getTotalNum() qDebug() << "totalNum:" << query.value("num") ; totalNum = query.value("num").value(); - query.finish(); - connector->closeDatabase(); - pageNum = (totalNum + showLimit - 1)/showLimit; qDebug() << "pageNum" << pageNum; @@ -178,8 +173,7 @@ void SearchResultWidget::querySet() textList.clear(); //查询数据 - connector->connectToDatabase("meituan"); - QSqlQuery query(db); + QSqlQuery query(meituanDb); query.prepare("select * from food where title like :segment limit :offset , :showLimit"); query.bindValue(":segment", "%" + segment + "%"); @@ -190,8 +184,6 @@ void SearchResultWidget::querySet() queryDatabase(query); qDebug() << "query success"; - query.finish(); - connector->closeDatabase(); //设置按钮 setBtns(); diff --git a/src/ChangShaTour/searchresultwidget.h b/src/ChangShaTour/searchresultwidget.h index 6104f9a..0ad529e 100644 --- a/src/ChangShaTour/searchresultwidget.h +++ b/src/ChangShaTour/searchresultwidget.h @@ -13,7 +13,7 @@ #include #include #include "addhistory.h" -#include "databaseconnector.h" +#include "cglobal.h" #include "webwidget.h" #include "imgdownloader.h" @@ -48,7 +48,6 @@ private: QStringList imgList; QStringList textList; QStringList idList; - DatabaseConnector * connector; AddHistory *history; int totalNum; diff --git a/src/ChangShaTour/sortwidget.cpp b/src/ChangShaTour/sortwidget.cpp index 9969ed2..8c8917e 100644 --- a/src/ChangShaTour/sortwidget.cpp +++ b/src/ChangShaTour/sortwidget.cpp @@ -25,7 +25,6 @@ SortWidget::SortWidget(QWidget *parent) : subWidget = new QWidget(); subVerLayout = new QVBoxLayout(); web = new WebWidget(); - connector = new DatabaseConnector(); pageWidget = new QWidget(); pageHoriLayout = new QHBoxLayout(); nextButton = new QPushButton("下页"); @@ -34,11 +33,9 @@ SortWidget::SortWidget(QWidget *parent) : pageHoriLayout->addWidget(nextButton); pageWidget->setLayout(pageHoriLayout); - QString database="meituan"; - connector->connectToDatabase(database); - QSqlQuery query(db); + QSqlQuery query(meituanDb); //读取数据库,获取按钮信息,初始化各List - queryDatabase(query, "select * from csmeishi limit " + QString::number(row, 10)); + queryDatabase(query, "select * from food limit " + QString::number(row, 10)); size = (size < row? size: row); setScreenBtns(); @@ -63,9 +60,6 @@ SortWidget::SortWidget(QWidget *parent) : //必选要在setWidget方法调用之前把subWidget中的layout设置好,否则显示不出来 scroll->setWidget(subWidget); - query.finish(); - connector->closeDatabase(); - setPageMaxNumber(screenStr); setPageBtns(); @@ -222,7 +216,7 @@ void SortWidget::InvisibleAllSubScreenBtns() void SortWidget::ShowSubScreenBtn() { - if ( screenCode == "csmeishi" ) + if ( screenCode == "food" ) foodChoices->setVisible(true); else if ( screenCode == "csjiudian" ) hotelChoices->setVisible(true); @@ -248,7 +242,7 @@ void SortWidget::setSubScreenBtns(QString str) if ( str == "美食" ) { foodChoices->setVisible(true); - screenCode = "csmeishi"; + screenCode = "food"; } else if ( str == "酒店" ) { @@ -296,9 +290,7 @@ void SortWidget::setSubScreenBtns(QString str) void SortWidget::Screen(QString str) { - QString database="meituan"; - connector->connectToDatabase(database); - QSqlQuery query(db); + QSqlQuery query(meituanDb); //读取数据库,获取按钮信息,初始化各List screenStr = str; if ( str == "美食" || str == "酒店" || str == "民宿" || str == "休闲娱乐/KTV" || str == "生活服务" || str == "丽人/美发/医学美容" || str == "结婚/婚纱摄影/婚宴" || str == "亲子/儿童乐园/幼教" || str == "运动健身/健身中心" ) @@ -327,8 +319,6 @@ void SortWidget::Screen(QString str) subWidget->setLayout(subVerLayout); scroll->setWidget(subWidget); - query.finish(); - connector->closeDatabase(); setPageMaxNumber(str); setPageBtns(); } @@ -347,9 +337,7 @@ void SortWidget::setPageBtns() void SortWidget::setPageMaxNumber(QString str) { - QString database="meituan"; - connector->connectToDatabase(database); - QSqlQuery query(db); + QSqlQuery query(meituanDb); //读取数据库,获取按钮信息,初始化各List if ( str == "美食" || str == "酒店" || str == "民宿" || str == "休闲娱乐/KTV" || str == "生活服务" || str == "丽人/美发/医学美容" || str == "结婚/婚纱摄影/婚宴" || str == "亲子/儿童乐园/幼教" || str == "运动健身/健身中心" ) query.exec("select count(1) from " + screenCode); @@ -358,15 +346,11 @@ void SortWidget::setPageMaxNumber(QString str) query.next(); pageMaxNumber = query.value(0).toInt() / row + 1; pageNumber = 0; - query.finish(); - connector->closeDatabase(); } void SortWidget::nextPage() { - QString database="meituan"; - connector->connectToDatabase(database); - QSqlQuery query(db); + QSqlQuery query(meituanDb); //读取数据库,获取按钮信息,初始化各List if ( screenStr == "美食" || screenStr == "酒店" || screenStr == "民宿" || screenStr == "休闲娱乐/KTV" || screenStr == "生活服务" || screenStr == "丽人/美发/医学美容" || screenStr == "结婚/婚纱摄影/婚宴" || screenStr == "亲子/儿童乐园/幼教" || screenStr == "运动健身/健身中心" ) queryDatabase(query, "select * from " + screenCode + " limit " + QString::number(row * (pageNumber + 1)) + "," + QString::number(row)); @@ -394,17 +378,13 @@ void SortWidget::nextPage() subWidget->setLayout(subVerLayout); scroll->setWidget(subWidget); - query.finish(); - connector->closeDatabase(); pageNumber++; setPageBtns(); } void SortWidget::backPage() { - QString database="meituan"; - connector->connectToDatabase(database); - QSqlQuery query(db); + QSqlQuery query(meituanDb); //读取数据库,获取按钮信息,初始化各List if ( screenStr == "美食" || screenStr == "酒店" || screenStr == "民宿" || screenStr == "休闲娱乐/KTV" || screenStr == "生活服务" || screenStr == "丽人/美发/医学美容" || screenStr == "结婚/婚纱摄影/婚宴" || screenStr == "亲子/儿童乐园/幼教" || screenStr == "运动健身/健身中心" ) queryDatabase(query, "select * from " + screenCode + " limit " + QString::number(row * (pageNumber - 1)) + "," + QString::number(row)); @@ -432,8 +412,6 @@ void SortWidget::backPage() subWidget->setLayout(subVerLayout); scroll->setWidget(subWidget); - query.finish(); - connector->closeDatabase(); pageNumber--; setPageBtns(); } diff --git a/src/ChangShaTour/sortwidget.h b/src/ChangShaTour/sortwidget.h index d63d259..81c3f17 100644 --- a/src/ChangShaTour/sortwidget.h +++ b/src/ChangShaTour/sortwidget.h @@ -9,7 +9,7 @@ #include #include #include "webwidget.h" -#include "databaseconnector.h" +#include "cglobal.h" #if _MSC_VER >= 1600 #pragma execution_character_set("utf-8") @@ -48,7 +48,6 @@ private: Ui::SortWidget *ui; WebWidget *web; - DatabaseConnector * connector; QSqlDatabase db; QStringList urlList; @@ -68,7 +67,7 @@ private: QSignalMapper * signalMapper; QSignalMapper * subSignalMapper; QString screenStr = "美食"; - QString screenCode = "csmeishi"; + QString screenCode = "food"; QWidget * foodChoices; QWidget * hotelChoices; QWidget * houseChoices; diff --git a/src/ChangShaTour/userinfowidget.cpp b/src/ChangShaTour/userinfowidget.cpp index 2f713c5..be13351 100644 --- a/src/ChangShaTour/userinfowidget.cpp +++ b/src/ChangShaTour/userinfowidget.cpp @@ -18,10 +18,7 @@ UserInfoWidget::UserInfoWidget(QWidget *parent) : QHBoxLayout *accountHLayout=new QHBoxLayout(); QHBoxLayout *passwordHLayout=new QHBoxLayout(); qDebug()<connectToDatabase(database); - QSqlQuery query(db); + QSqlQuery query(userDb); query.prepare("select email,password from account where id=?"); query.addBindValue(Id); query.exec(); @@ -30,8 +27,6 @@ UserInfoWidget::UserInfoWidget(QWidget *parent) : QString passwordget=query.value("password").toString(); //Id=query.value("id").toInt(); //qDebug()<closeDatabase(); QLabel * accountLabel = new QLabel("邮箱"); QLineEdit * accountLine = new QLineEdit(); accountLine->setText(accountget); diff --git a/src/ChangShaTour/userinfowidget.h b/src/ChangShaTour/userinfowidget.h index 823e3f5..5808a84 100644 --- a/src/ChangShaTour/userinfowidget.h +++ b/src/ChangShaTour/userinfowidget.h @@ -3,7 +3,7 @@ #include #include -#include "databaseconnector.h" +#include "cglobal.h" #if _MSC_VER >= 1600 #pragma execution_character_set("utf-8") @@ -19,7 +19,6 @@ class UserInfoWidget : public QWidget public: explicit UserInfoWidget(QWidget *parent = nullptr); - DatabaseConnector * connect; QSqlQuery query; ~UserInfoWidget();