У меня проблема с моим именем пользователя и паролем для «успешного входа в систему», который не подключается к базе данных, я не знаю, как его кодировать ... например, получить имя пользователя и пароль из базы данных для аутентификации входа. Вот мой код javascript.....
var attempt = 3;
function userLogin(){
var username = document.getElementById("username").value;
var password = document.getElementById("password1").value;
if (username= = "" || password= = ""){
alert ("Please complete the required field!");
}if (username==username || password==password){
alert ("Login Successfully");
}else{
attempt --;
document.getElementById("msg").innerHTML = "<center class='text-danger'>Invalid username or password</center>";
alert("You have left "+attempt+" login attempt;");
if (attempt == 0){
document.getElementById("username").disabled=true;
document.getElementById("password1").disabled=true;
document.getElementById("login").disabled=true;
}
}
}
Я хочу получить имя пользователя и пароль из базы данных Mysql для входа в систему (вход выполнен успешно). Как, например... ввод имени пользователя и пароля из базы данных, тогда, если он правильный, он предупредит об успешном входе в систему, а затем после перехода на целевую страницу... иначе, если не из базы данных, он будет пытаться 3 раза, как мой код здесь..
Добро пожаловать в Stack Overflow, ваш код не показывает, как код обращается к базе данных. Вам нужен внутренний слой между вашим JS и вашей базой данных, чтобы пароль базы данных не был доступен любому посетителю.
Я думаю, вы пытаетесь аутентифицировать пользователей здесь. Обработка аутентификации на стороне клиента — плохая идея, поскольку она позволяет любому увидеть учетные данные из базы данных. Вы хотите изучить бэкэнд, такой как Node или PHP, чтобы делать то, что вы пытаетесь сделать. Я предлагаю вам взглянуть на что-то вроде Node.JS, которое позволит вам подключаться к базе данных и делать запросы к базе данных. Я бы посоветовал начать с Node + JWT, если вы новичок в этом. Я делюсь здесь некоторым кодом Node+Mongoose в качестве примера (контроллер входа в систему).
const login_post = async (req, res) => {
//we take the user-entered data from the request
const { email, password, username } = req.body;
try {
//the 'User' here is a mongoose model and lets use run queries against MongoDB database but you could use an ORM for your SQL database here instead
const user = await User.login(email, password, username);
const token = createToken(user._id);
res.cookie('jwt', token, { httpOnly: true, maxAge: maxAge * 1000 });
req.body.userId = user._id;
// console.info(req.body.userId);
res.status(200).json({ user: user._id });
}
catch (err) {
const errors = handleErrors(err);
res.status(400).json({ errors });
}
}
Это может показаться запутанным, но все, что вам нужно сделать, это заставить js на стороне клиента выполнять вызовы API к серверной части. Я считаю, что вы могли бы использовать базу данных Google Firebase, если вы не хотите делать эту часть самостоятельно.
Спасибо, сэр .. я узнал от вас, теперь мне нужно изменить его с помощью PHP, я думаю, что это лучше :)
Какой плохой код формата, и
username==username || password==password
должен бытьusername==username && password==password