router.post("/login", async (req, res) => {
const { username, password } = req.body; // Formdan gelen veriyi al
try {
const request = new sql.Request();
const result = await request
.input("username", sql.VarChar, username) // Kullanıcı adını parametre olarak ver
.input("password", sql.VarChar, password) // Şifreyi parametre olarak ver
.query(
"SELECT * FROM Kullanicilar WHERE kullaniciAdi = @username AND kullaniciSifre = @password"
); // Sorgu
if (result.recordset.length > 0) {
// Kullanıcı bulunduysa giriş başarılı
console.log("giriş başarılı");
res.render("user-page");
} else {
// Kullanıcı bulunamadıysa hata mesajı
console.log("Geçersiz kullanıcı adı veya şifre");
res.render("index", {
errorMessage: "Hatalı kullanıcı adı veya şifre girdiniz.",
});
}
} catch (err) {
console.error("Giriş işlemi sırasında hata oluştu:", err);
res.status(500).send("Giriş sırasında bir hata oluştu.");
}});
<div class="giris gizle">
<button class="giris-kapat">×</button>
<h1 class="giris-name">Giriş</h1>
<div>
<form action="/login" method="POST">
<ul class="giris-list">
<li class="giris-item">
<p class="giris-text">Kullanıcı Adı:</p>
<input type="text" name="username" />
</li>
<li class="giris-item">
<p class="giris-text">Şifre:</p>
<input type="password" name="password" />
</li>
</ul>
<% if (typeof errorMessage !== 'undefined') { %>
<p id="error-message" style="color: red; margin-top: 10px">
<%= errorMessage %>
</p>
<% } %>
<button type="submit" class="giris-btn">Giriş</button>
</form>
</div>
</div>
在此代码中,如果在模式窗口的登录页面上输入了错误的用户信息,我希望在模式窗口关闭之前在登录按钮上返回错误并显示红色文本。但现在,此代码返回错误,但它重定向到 /login 页面并关闭模式窗口。如果您有帮助,我会很高兴。
将引导模式添加到您的代码中。并从您的 catch 块中调用它。
try { // todo } catch (err) { $('#errorModal').modal('toggle') }