如何将经过验证的JavaScript数据放入MySQL数据库
据我所知,由于JavaScript是一种浏览器端语言,MySQL是服务器端语言,所以我需要一种能够与浏览器交互的服务器端语言,如PHP。我一直在这里和网上寻找解决方案,但运气不好 我的问题是——对于下面的代码,有没有关于如何通过PHP发送验证信息到数据库的通用格式 HTML:如何将经过验证的JavaScript数据放入MySQL数据库,javascript,php,html,mysql,Javascript,Php,Html,Mysql,据我所知,由于JavaScript是一种浏览器端语言,MySQL是服务器端语言,所以我需要一种能够与浏览器交互的服务器端语言,如PHP。我一直在这里和网上寻找解决方案,但运气不好 我的问题是——对于下面的代码,有没有关于如何通过PHP发送验证信息到数据库的通用格式 HTML: 注册 电邮: 用户名: 密码: 确认密码: 名字: 姓氏: 团队名称: JavaScript: function validateRegForm() { //Validates email addres
注册
电邮:
用户名:
密码:
确认密码:
名字:
姓氏:
团队名称:
JavaScript:
function validateRegForm()
{
//Validates email address
var a = document.forms["regForm"]["email"].value;
if (a == null || a == "") {
alert("You forgot to enter your Email!");
return false;
} else {
var mailformat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
if (a.match(mailformat)) {
document.regForm.email.focus();
} else {
alert("You have entered an invalid Email Address!");
document.regForm.email.focus();
return false;
}
}
//Validates username
var aa = document.forms["regForm"]["username"].value;
if (aa == null || aa == "") {
alert("You forgot to enter your Username!");
document.regForm.username.focus();
return false;
}
re = /^\w+$/;
if (!re.test(regForm.username.value)) {
alert("Your Username must contain only letters, numbers, and underscores!");
document.regForm.username.focus();
return false;
}
if (aa.length < 7) {
alert("Your Username is too short! (8 character min)");
document.regForm.username.focus();
return false;
}
//Validates password & confirm password
if (regForm.password.value != "" && regForm.password.value == regForm.cpassword.value) {
if (regForm.password.value.length < 7) {
alert("Your Password must contain at least 8 characters!");
document.regForm.email.focus();
return false;
}
re = /[0-9]/;
if(!re.test(regForm.password.value)) {
alert("Your Password must contain at least one number (0-9)!");
document.regForm.password.focus();
return false;
}
re = /[a-z]/;
if(!re.test(regForm.password.value)) {
alert("Your Password must contain at least one lowercase letter (a-z)!");
document.regForm.password.focus();
return false;
}
re = /[A-Z]/;
if(!re.test(regForm.password.value)) {
alert("Your Password must contain at least one uppercase letter (A-Z)!");
document.regForm.password.focus();
return false; }
} else {
alert("Please check that you've entered or confirmed your password!");
document.regForm.password.focus();
return false;
}
//Validates first name
var b = document.forms["regForm"]["firstname"].value;
if (b == null || b == "") {
alert('You forgot to enter your First Name!');
return false;
}
//Validates last name
var c = document.forms["regForm"]["lastname"].value;
if (c == null || c == "") {
alert('You forgot to enter your Last Name!');
return false;
}
//Validates team name
var d = document.forms["regForm"]["teamname"].value;
if (d == null || d == "") {
alert('You forgot to enter your Team Name!');
document.regForm.teamname.focus();
return false;
}
re = /^\w+$/;
if (!re.test(regForm.teamname.value)) {
alert("Team Name must contain only letters, numbers, and underscores!");
document.regForm.teamname.focus();
return false;
}
if (d.length < 7) {
alert("Your Team Name is too short! (8 character min)");
document.regForm.teamname.focus();
return false;
}
return true;
}
函数validateRegForm()
{
//验证电子邮件地址
var a=document.forms[“regForm”][“email”].value;
如果(a==null | | a==“”){
提醒(“你忘了输入电子邮件!”);
返回false;
}否则{
var mailformat=/^\w+([\.-]?\w+*@\w+([\.-]?\w+*(\.\w{2,3})+$/;
如果(a.match(邮件格式)){
document.regForm.email.focus();
}否则{
警报(“您输入的电子邮件地址无效!”);
document.regForm.email.focus();
返回false;
}
}
//验证用户名
var aa=document.forms[“regForm”][“username”].value;
如果(aa==null | | aa==“”){
警告(“您忘记输入您的用户名!”);
document.regForm.username.focus();
返回false;
}
re=/^\w+$/;
如果(!re.test(regForm.username.value)){
警告(“您的用户名必须只包含字母、数字和下划线!”);
document.regForm.username.focus();
返回false;
}
如果(aa.长度<7){
警告(“您的用户名太短!(最少8个字符)”;
document.regForm.username.focus();
返回false;
}
//验证密码并确认密码
if(regForm.password.value!=''&®Form.password.value==regForm.cpassword.value){
if(regForm.password.value.length<7){
警报(“您的密码必须至少包含8个字符!”);
document.regForm.email.focus();
返回false;
}
re=/[0-9]/;
if(!re.test(regForm.password.value)){
警告(“您的密码必须至少包含一个数字(0-9)!”;
document.regForm.password.focus();
返回false;
}
re=/[a-z]/;
if(!re.test(regForm.password.value)){
警告(“您的密码必须至少包含一个小写字母(a-z)!”;
document.regForm.password.focus();
返回false;
}
re=/[A-Z]/;
if(!re.test(regForm.password.value)){
警告(“您的密码必须至少包含一个大写字母(A-Z)!”;
document.regForm.password.focus();
返回false;}
}否则{
警报(“请检查您是否输入或确认了密码!”);
document.regForm.password.focus();
返回false;
}
//验证名字
var b=document.forms[“regForm”][“firstname”].value;
如果(b==null | | b==“”){
警报('您忘记输入您的名字!');
返回false;
}
//验证姓氏
var c=document.forms[“regForm”][“lastname”].value;
如果(c==null | | c==“”){
警报('您忘记输入您的姓氏!');
返回false;
}
//验证团队名称
var d=document.forms[“regForm”][“teamname”].value;
如果(d==null | | d==“”){
警报('您忘记输入您的团队名称!');
document.regForm.teamname.focus();
返回false;
}
re=/^\w+$/;
if(!re.test(regForm.teamname.value)){
警告(“团队名称必须仅包含字母、数字和下划线!”);
document.regForm.teamname.focus();
返回false;
}
如果(d.长度<7){
警告(“您的团队名称太短!(最少8个字符)”;
document.regForm.teamname.focus();
返回false;
}
返回true;
}
有很多方法可以解决您的问题。
这是我想的
<form method="post" name="regForm" onSubmit="return validateRegForm();">
这部分应该有一个“动作”
在你的表格上,应该有一个
<input type="submit" name="submit" value="Submit"/>
这将调用“form”标记中的“onSubmit”操作
试试这个。也许这些就是你错过的东西。
干杯 客户端验证的角色与服务器不同。虽然服务器的任务是防止数据泄露并确保数据干净,但客户端验证的目的应该是尽可能减少表单填写的麻烦 做好服务器端验证本身就是一门科学。幸运的是,有一些框架可以让你更容易正确地完成它(并且是你个人的最爱),但是如果你有一个值得称赞的目标,那就是从零开始学习,那么还有很多值得一读的东西 良好的客户端验证利用了JavaScript的优势。它是即时的,可以向用户准确地显示问题所在。大多数情况下,你都会记下来,除了用户一次只会收到一个错误,并且必须点击警报,直到他们收到为止
<input type="submit" name="submit" value="Submit"/>
var validators = [
{name: 'username', test: /^[\d\w]{8,}$/},
{name: 'email', test: /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/},
{name: 'password', test: /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}$/},
{name: 'cpassword', test: /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}$/},
{name: 'firstname', test: /w+/},
{name: 'lastname', test: /w+/},
{name: 'teamname', test: /[\w+\d+]{8,}/}
td.hide{
display: none;
}
td.error {
font-size: .8em;
color: #F00;
padding: 0 0 0 30%;
}
function validateRegForm(event)
{
var formIsValid = true;
for(var i=0; i < validators.length; i++){
var currentField = document.getElementsByName(validators[i].name)[0];
var validationField = document.getElementById(validators[i].name + "Validation");
//check that this field is valid, as well as the other filled out ones along the way
if(validators[i].name == event.target.name || currentField.value.length > 0){
if(validators[i].test.test(currentField.value)){
validationField.setAttribute("class", "hide");
}else{
validationField.setAttribute("class", "error");
formIsValid = false;
}
//do the passwords match?
if(currentField.name == 'cpassword' || validators[i].name == 'cpassword'){
if(document.getElementsByName('cpassword')[0].value != document.getElementsByName('password')[0].value){
document.getElementById('cpasswordValidation').setAttribute("class", "error");
formIsValid = false;
}
else {
document.getElementById('cpasswordValidation').setAttribute("class", "hide");
}
}
}
}
if(!formIsValid){
event.preventDefault();
}
return formIsValid;
}