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>
In this code, if the user information is entered incorrectly on the login page in the modal window, I want an error to be returned with red text on the login button before the modal window closes. But now, this code returns an error, but it redirects to the /login page and closes the modal window. I would be happy if you help.