在我的数据库中,我的gender_id属性设置为枚举('M','F'), M 是默认值
性别形式
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<label>Gender: </label>
<div class="btn-group btn-group-justified" role="group" >
<div class="btn-group" role="group">
<button type="button" name="gender" id="**gender_Mid**" class="btn btn-primary active" value="M" onclick="gender(1)"> Male </button>
</div> // male gender
<div class="btn-group" role="group">
<button type="button" name="gender" id="**gender_Fid**" class="btn btn-primary" value="F" onclick="gender(2)"> Female </button>
</div> //female gender
</div> <!--End of Button Group-->
</div> <!--End of column-->
的Ajax / JavaScript的
<script>
var genderMF = "M";
function gender(number){
if(number !== 1 && number !== 2){
alert('Please select your gender');
}
if(number == 1){
genderMF = "M";
}
if(number == 2){
genderMF = "F";
}
}
function send_registration(){
var firstname = document.getElementById("firstname").value;
var gender = genderMF;
var parameters=
"firstname="+firstname+
...
"&gender_id="+gender; // is there an error here?
var ajax=new XMLHttpRequest();
ajax.onreadystatechange=function(){
if(ajax.readyState === 4 && ajax.status === 200) {
alert(ajax.responseText);
}
};
ajax.open("POST","register.php",false);
ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
ajax.send(parameters);
} // End of function
在我的注册表中有
// 6. Check for an Gender.
else if(!in_array($_POST['gender_id'], array('M','F')) ){
echo 'Please enter a gender!';
exit();
}
$gender = escape_data($_POST['gender_id']);
我的javascript / ajax和性别是在同一个php文件和register.php容器中只有我的PHP代码
我是否点击女性或男性按钮的问题我总是在数据库中获得值M.正确插入所有其他数据。
问题解决我只需删除此部分名称=“性别”即可使用。
答案 0 :(得分:0)
我不明白为什么,但性别功能似乎并不为人所知。
解决方法:使用窗口。
var genderMF = "M";
window.gender = function (number){
if(number !== 1 && number !== 2){
alert('Please select your gender');
}
if(number == 1){
genderMF = "M";
}
if(number == 2){
genderMF = "F";
}
console.log(genderMF);
}