Fehler "'+' kann zwei Zeiger nicht hinzufügen".Fehler: '+' kann zwei Zeiger nicht hinzufügen
Kann mir jemand erklären, was genau falsch ist/wie man es löst?
Information: movedb hat einen Tabellenbenutzer erhalten, der User_ID (Integer) und Passwort (Text) enthält. Zeile, die jetzt einen Fehler generiert, gab früher false zurück, so dass ich dachte, dass User_ID aufgrund von Typen (Qstring und Integer) nicht mit dem Benutzernamen verglichen werden kann und die Konvertierung durchgeführt wurde.
login.cpp
#include "login.h"
#include "ui_login.h"
Login::Login(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::Login)
{
ui->setupUi(this);
db=QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setUserName("root");
db.setPassword("");
db.setDatabaseName("movedb");
if(!db.open())
{
ui->Status->setText("Status: Failed to connect with database");
}
else
{
ui->Status->setText("Status: Ready to LogIn");
}
}
Login::~Login()
{
delete ui;
}
void Login::on_Login_2_clicked()
{
int username;
QString password;
username=ui->lineEdit_Username->text().toInt();
password=ui->lineEdit_Password->text();
if(!db.isOpen())
{
qDebug()<<"Failed to open database";
return;
}
QSqlQuery qry;
if(qry.exec("select * from user where User_ID='"+username+"' AND password'"+password+"'"))
{
int count=0;
while(qry.next())
{
count++;
}
if(count==1)
{
ui->Login_status->setText("You have logged in");
}
if(count>1)
{
ui->Login_status->setText("Something went wrong - please contact with admin");
}
if(count<1)
{
ui->Login_status->setText("Failed to LogIn");
}
}
else
{
ui->label->setText("Something is very Wrong ");
}
}
-Linie, die Fehler generiert:
if(qry.exec("select * from user where User_ID='"+username+"' AND password'"+password+"'"))
rohe Zeiger besitzen? Es gibt Smartpointer oder einfache Member-Variablen. –