gpt4 book ai didi

php - 如何将表单内容放入数据库并返回php响应?

转载 作者:行者123 更新时间:2023-11-29 22:21:58 28 4
gpt4 key购买 nike

我创建了一个 html 表单,它将某些变量发送到 php 文件,该文件保存在数据库中,并通过 json 将成功返回给 javascript。但问题是我无法保存数据并将响应返回到 javascript 文件。我不知道是什么原因。有人可以帮我解决这个问题吗?谢谢

我的表格是

<!doctype html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"> </script>
<script src="scriptj.js"></script>
</head>
<body>
<form action="http://localhost/donotdel/process.php" method="POST">
<div id="name-group" class="form-group">
<label for="name">Name</label>
<input type="text" class="form-control" name="name" placeholder="name">
</div>
<div id="email-group" class="form-group">
<label for="email">Email</label>
<input type="text" class="form-control" name="email" placeholder="email">
</div>
<button type="submit" class="btn btn-success">Submit <span class="fa fa-arrow-right"></span></button>
</form>
</body>
</html>

我的 JavaScript 文件是

$(document).ready(function () {
$('form').submit(function (event) {
$('.form-group').removeClass('has-error');
$('.help-block').remove();
var formData = {
'name': $('input[name=name]').val(),
'email': $('input[name=email]').val(),
};
$.ajax({
type: 'POST',
url: 'http://localhost/donotdel/process.php',
data: formData,
dataType: 'json',
encode: true
}).done(function (data) {
console.log(data);
if (!data.success) {
if (data.errors.name) {
$('#name-group').addClass('has-error');
$('#name-group').append('<div class="help-block">' + data.errors.name + '</div>');
}

if (data.errors.email) {
$('#email-group').addClass('has-error');
$('#email-group').append('<div class="help-block">' + data.errors.email + '</div>');
}
}
else {
$('form').append('<div class="alert alert-success">' + data.message + '</div>');
}
}).fail(function (data) {
console.log(data);
});
event.preventDefault();
});
});

我的 php 文件是

<?php

$errors = array();
$data = array();

if (empty($_POST['name']))
$errors['name'] = 'Name is required.';

if (empty($_POST['email']))
$errors['email'] = 'Email is required.';

if ( ! empty($errors)) {
$data['success'] = false;
$data['errors'] = $errors;
} else {
$data['success'] = true;
$data['message'] = 'Success!';
}
header ('Content-Type: application/json');
header("Access-Control-Allow-Origin: *");
echo json_encode($data);
?>

现在,我想从上面的 php 文件中输入名称电子邮件到数据库中。但我不知道该怎么做。那么有人可以帮我解决代码吗?输入后我想将上面的 json 响应发送回 javascript

谢谢

最佳答案

您需要做的是建立数据库连接并使用该数据库连接在用户表中插入新行。如果sql出错则返回错误,如果有效则返回json数据。完成后请确保关闭与数据库的连接。

首先构建 dbconfig.php 文件这用于建立与数据库的连接。这就是简单的样子。

<?php
$servername = "localhost";
$username = "root";
$password = "temppass";

// Create connection
$conn = new mysqli($servername, $username, $password);

// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>

将 dbcong.php 包含在您的文件中

include ('dbconfig.php');
// Check connection
if (mysqli_connect_error()) {
die("Database connection failed: " . mysqli_connect_error());
}else{
//if it make a connection insert code here!
$qry = "INSERT ..."; //build your insert string here!
$conn->query($qry); // run your insert here!
//Don't forget to CLOSE YOUR CONNECTION!
$conn->close();
}

关于php - 如何将表单内容放入数据库并返回php响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30621655/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com