请编写程序,实现登录验证,输入用户名和密码,显示成功登录。P95
时间: 2024-04-09 19:28:19 浏览: 21
以下是一个简单的示例代码,实现了基本的登录验证功能:
```python
def login():
username = input("请输入用户名: ")
password = input("请输入密码: ")
# 假设正确的用户名和密码为 "admin" 和 "password"
if username == "admin" and password == "password":
print("登录成功!")
else:
print("登录失败!")
login()
```
你可以根据需要进行修改和扩展,比如将用户名和密码存储在数据库中进行验证,或者使用加密算法对密码进行加密等。
相关问题
编写Servlet程序,获取前端输入的用户名和密码信息,通过与数据库表中的信息比对,验证登录用户的身份,登录成功则在前端显示登录成功以及欢迎登录用户的信息,并且数据库中该用户的登录次数加1,否则显示登录失败,回到重新登录页面程序分析
为了编写这个Servlet程序,需要以下步骤:
1. 在前端页面中创建一个表单,用于输入用户名和密码,并将表单的action设置为Servlet程序的URL。
2. 在Servlet程序中,通过request.getParameter()方法获取前端输入的用户名和密码信息。
3. 使用JDBC连接数据库,查询该用户名和密码是否匹配数据库中的信息。
4. 如果匹配,则在前端页面显示登录成功以及欢迎登录用户的信息,并且更新数据库中该用户的登录次数。
5. 如果不匹配,则在前端页面显示登录失败,并提供重新登录的链接。
下面是一个简单的示例代码:
```java
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
// 获取前端输入的用户名和密码
String username = request.getParameter("username");
String password = request.getParameter("password");
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
// 连接数据库
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test";
String dbUser = "root";
String dbPassword = "123456";
conn = DriverManager.getConnection(url, dbUser, dbPassword);
// 查询数据库中是否存在该用户
String sql = "SELECT * FROM users WHERE username=? AND password=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, username);
pstmt.setString(2, password);
rs = pstmt.executeQuery();
if (rs.next()) {
// 更新该用户的登录次数
int loginCount = rs.getInt("login_count") + 1;
sql = "UPDATE users SET login_count=? WHERE username=?";
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, loginCount);
pstmt.setString(2, username);
pstmt.executeUpdate();
// 在前端页面显示登录成功以及欢迎登录用户的信息
out.println("<html><head><title>登录成功</title></head>");
out.println("<body><h1>欢迎您," + username + "!</h1>");
out.println("<p>您已成功登录,登录次数:" + loginCount + "</p>");
out.println("</body></html>");
} else {
// 在前端页面显示登录失败,并提供重新登录的链接
out.println("<html><head><title>登录失败</title></head>");
out.println("<body><h1>登录失败,请重新登录!</h1>");
out.println("<p><a href='login.html'>重新登录</a></p>");
out.println("</body></html>");
}
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
} finally {
// 关闭数据库连接
try {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
```
需要注意的是,这个示例代码中使用的是MySQL数据库,需要先下载并安装MySQL,并创建一个名为test的数据库,其中包含一个名为users的表,该表包含以下字段:
- id:自增长主键
- username:用户名
- password:密码
- login_count:登录次数
shell脚本的应用——用户登录验证程序
好的,我可以为您介绍一下shell脚本的应用——用户登录验证程序。
用户登录验证程序是通过shell脚本编写的一个简单的命令行程序,可以验证用户的登录信息是否正确。下面是一个简单的用户登录验证程序的示例:
```
#!/bin/bash
# 定义用户名和密码
username="test"
password="password"
# 读取用户输入的用户名和密码
read -p "请输入用户名: " input_username
read -p "请输入密码: " -s input_password
echo ""
# 验证用户输入的用户名和密码是否正确
if [ $input_username == $username ] && [ $input_password == $password ]
then
echo "欢迎您,$username!"
else
echo "用户名或密码错误!"
fi
```
使用该程序时,用户需要输入正确的用户名和密码,程序会判断输入的信息是否与预设的用户名和密码一致,如果一致,则输出欢迎信息,否则输出错误信息。
需要注意的是,该程序中的用户名和密码是硬编码在程序中的,实际应用中应该使用更安全的方式存储和验证用户信息。
希望能对您有所帮助。