Javascript 不使用PHP和Ajax保存表单详细信息
我是Javascript 不使用PHP和Ajax保存表单详细信息,javascript,php,ajax,Javascript,Php,Ajax,我是PHP以及Ajax编程语言的初学者。我使用PHP和Ajax将一些数据存储到mysqli数据库中,不幸的是它没有保存,而是验证了每个数据 这是我做的代码段,但没有结果: <script> function sendContact() { var valid; valid = validateContact(); if (valid) {
PHP
以及Ajax
编程语言的初学者。我使用PHP
和Ajax
将一些数据存储到mysqli
数据库中,不幸的是它没有保存,而是验证了每个数据
这是我做的代码段,但没有结果:
<script>
function sendContact() {
var valid;
valid = validateContact();
if (valid) {
$('#Register').click(function (e) {
var username = $('#username').val();
var email = $('#email').val();
var password = $('#password').val();
var password1 = $('#password1').val();
var data = { "username": username, "email": email, "password": password, "password1": password1 };
jQuery.ajax({
data: data,
url: "phpquery/insert_patient.php", // Url to which the request is send
type: "POST", // Type of request to be send, called as method
success: function (data) {
$('#username').val('');
$('#email').val('');
$('#password').val('');
$('#password1').val('');
}
});
});
}
}
function validateContact() {
var valid = true;
$(".demoInputBox").css('background-color', '');
$(".info").html('');
if (!$("#username").val()) {
$("#userName-info").html("(required)");
$("#username").css('background-color', '#FFFFDF');
valid = false;
}
if (!$("#email").val()) {
$("#userEmail-info").html("(required)");
$("#email").css('background-color', '#FFFFDF');
valid = false;
}
if (!$("#email").val().match(/^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/)) {
$("#userEmail-info").html("(invalid)");
$("#email").css('background-color', '#FFFFDF');
valid = false;
}
if (!$("#password").val()) {
$("#password-info").html("(required)");
$("#password").css('background-color', '#FFFFDF');
valid = false;
}
if (!$("#password1").val()) {
$("#password1-info").html("(required)");
$("#password1").css('background-color', '#FFFFDF');
valid = false;
}
return valid;
}
</script>
函数sendContact(){
var有效;
valid=validateContact();
如果(有效){
$(“#寄存器”)。单击(函数(e){
var username=$('#username').val();
var email=$('#email').val();
var password=$('#password').val();
var password1=$('#password1').val();
var data={“用户名”:用户名,“电子邮件”:电子邮件,“密码”:密码,“密码1”:密码1};
jQuery.ajax({
数据:数据,
url:“phpquery/insert_patient.php”,//请求发送到的url
类型:“POST”,//要发送的请求类型,称为方法
成功:功能(数据){
$('#username').val('');
$('#email').val('');
$('#password').val('');
$('#password1').val('');
}
});
});
}
}
函数validateContact(){
var valid=true;
$(“.demoInputBox”).css('背景色','');
$(“.info”).html(“”);
如果(!$(“#用户名”).val()){
$(“#用户名信息”).html(“(必需)”);
$(“#username”).css('background-color','#FFFFDF');
有效=错误;
}
如果(!$(“#电子邮件”).val()){
$(“#用户电子邮件信息”).html(“(必需)”);
$(“#email”).css('background-color','#FFFFDF');
有效=错误;
}
如果(!$(“#email”).val().match(/^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/){
$(“#用户电子邮件信息”).html(“(无效)”);
$(“#email”).css('background-color','#FFFFDF');
有效=错误;
}
if(!$(“#密码”).val(){
$(“#密码信息”).html(“(必需)”);
$(“#password”).css('background-color','#FFFFDF');
有效=错误;
}
if(!$(“#password1”).val()){
$(“#password1 info”).html(“(必需)”);
$(“#password1”).css('background-color','#FFFFDF');
有效=错误;
}
返回有效;
}
下面是我的HTML代码:
<form name="poster" id="poster" method="post" class="s12" data-toggle="validator">
<div>
<div class="input-field s12">
<input type="text" id="username" name="username" data-ng-model="name1" class="validate"
required>
<label>User name</label>
<span id="userName-info" class="text-danger"></span><br />
</div>
</div>
<div>
<div class="input-field s12">
<input type="email" id="email" name="email" class="validate" onblur="checkemail();"
onkeyup="checkemail();" onchange="checkemail();" required>
<label>Email id</label>
<span id="userEmail-info" class="info"></span><br />
<span id="email_status" name="email_status"></span>
</div>
</div>
<div>
<div class="input-field s12">
<input type="password" name="password" id="password" class="validate" required>
<label>Password</label>
<span id="password-info" class="text-danger"></span><br />
</div>
</div>
<div>
<div class="input-field s12">
<input type="password" name="password1" id="password1" class="validate" required>
<label>Confirm password</label>
<span id="password1-info" class="text-danger"></span><br />
</div>
</div>
<div>
<div class="input-field s4">
<input type="button" value="Register" id="Register" name="Register"
class="waves-effect waves-light log-in-btn" onClick="sendContact();">
</div>
</div>
<div>
<div class="input-field s12">
<a href="#" data-dismiss="modal" data-toggle="modal"
data-target="#modal1">Are you a already member ? Login</a> </div>
</div>
</form>
用户名
电子邮件id
暗语
确认密码
我的insert_patient.php页面将是:
<?php
// include('colour.css');
include('dbconnection.php');
if (isset($_POST['username'])) {
$first_name="";
$last_name="";
$address="";
$gender="";
$dob="";
$contact="";
$state="";
$image="";
$note="";
$username=$_POST["username"];
$email=$_POST["email"];
$password=$_POST["password"];
$sql= "INSERT INTO patients (p_fname,p_lname,p_address,p_gender,dob,p_contact,p_state,username,email,password,image,note)
VALUES ('". $first_name."','". $last_name."','". $address."', '". $gender."','". $dob."','". $contact."', '". $state."','". $username."','". $email."', '". $password."' , '". $image."', '". $note."') ";
if(mysqli_query($con,$sql) ){
echo'save';
}
else {
echo 'fail';
}
}
sendContact
应该只执行AJAX调用,而不应该调用$(“#注册”)。单击()。这为下次单击按钮添加了一个事件处理程序,它不会发送AJAX请求
function sendContact() {
var valid;
valid = validateContact();
if (valid) {
var username = $('#username').val();
var email = $('#email').val();
var password = $('#password').val();
var password1 = $('#password1').val();
var data = {
"username": username,
"email": email,
"password": password,
"password1": password1
};
jQuery.ajax({
data: data,
url: "phpquery/insert_patient.php", // Url to which the request is send
type: "POST", // Type of request to be send, called as method
success: function(data) {
$('#username').val('');
$('#email').val('');
$('#password').val('');
$('#password1').val('');
}
});
});
}
它是否返回保存
或失败
?如果查询失败,您应该使用mysqli\u error($con)
来找出原因。您应该学习如何使用准备好的语句来防止SQL注入。@Barmar这里是关于Ajax查询的问题。未经验证,它正在保存..确保jQuery库(JS)已加载。看看您的开发人员控制台。c=“ajax/vendor.js”>
我认为最好从代码段中取出它。信息技术他在工作。代码上没有错误。