
目录一、需求二、示例三、数据表结构四、代码一、需求利用上一篇【C#桌面客户端系列学习-4】封装数据库基础操作工具类CURD-CSDN博客封装的MySqlHelper工具类实现表单提交功能。表单内容包括输入框 、密码框、下拉选择框、单选按钮、复选框、文本域密码通过哈希加密并对表单验证。二、示例三、数据表结构四、代码密码使用哈希加密需要安装BCrypt.Net-Next程序包具体操作查看【C#桌面客户端系列学习-5】注册/登录-CSDN博客private void submit_Click(object sender, EventArgs e) { // 1. 接收并校验表单数据 // 接收前端传过来的值 string title this.title.Text; // 输入框 if(string.IsNullOrEmpty(title)) { MessageBox.Show(输入框不能为空, 输入框, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } MessageBox.Show(你输入了 title, 输入框); string password this.password.Text; // 密码框 if (string.IsNullOrEmpty(password)) { MessageBox.Show(密码框不能为空, 密码框, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } // 哈希加密 string passwordHash BCrypt.Net.BCrypt.HashPassword(password); string city this.city.Text; // 下拉框 if (this.city.SelectedItem null) { MessageBox.Show(下拉框不能为空, 下拉框, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } MessageBox.Show(你选中了 city, 下拉框); // 单选按钮 int sex 0; //未选择 if (sex1.Checked){ sex 1; } else if (sex2.Checked){ sex 2; } else { MessageBox.Show(单选框不能为空, 单选框, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } MessageBox.Show(你勾选了 sex, 单选框); // 复选框 string likes ; if (write.Checked) { if (likes ! ) likes ,; likes 1; } if (read.Checked) { if (likes ! ) likes ,; likes 2; } if (dai.Checked) { if (likes ! ) likes ,; likes 3; } if (likes ) { MessageBox.Show(复选框不能为空, 复选框, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } MessageBox.Show(你勾选了 likes, 复选框); // 文本域 string description this.description.Text; if (string.IsNullOrEmpty(description)){ MessageBox.Show(文本域不能为, 文本域, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } MessageBox.Show(你输入了 description, 文本域); // 2. 写入数据库 // sql添加语句 string sql insert into form(title, password, city, sex, likes, description) values (title, password, city, sex, likes, description); // 组装参数 MySqlParameter[] insertParams { new MySqlParameter(title, title), new MySqlParameter(password, passwordHash), new MySqlParameter(city, city), new MySqlParameter(sex, sex), new MySqlParameter(likes, likes), new MySqlParameter(description, description) }; try { // 执行sql int rows MySqlHelper.ExecuteNonQuery(sql, insertParams); if (rows 0) { // 添加成功 MessageBox.Show(提交成功, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); } else { // 添加失败 MessageBox.Show(提交失败, 提示, MessageBoxButtons.OK, MessageBoxIcon.Warning); } } catch (Exception ex) { MessageBox.Show(数据库操作失败 ex.Message, 错误, MessageBoxButtons.OK, MessageBoxIcon.Error); } } // 清空表单 private void button1_Click(object sender, EventArgs e) { title.Clear(); password.Clear(); city.SelectedIndex -1; sex1.Checked false; sex2.Checked false; write.Checked false; read.Checked false; dai.Checked false; description.Clear(); }