php - 如何将 HTML 表单中的数字添加到数据库中已有的数字?
问题描述
所以我有一个 HTML 表单,它通过我已连接到我的数据库的“input.php”文件将数据发送到数据库。
我想要完成的是,从 HTML 表单发送到数据库的数据都是数字。我想知道如何对 input.php 文件进行编码,以便当从 HTML 表单提交新数字并发送到已经有数字的值时,将两者相加。
例如,A 人在第一天在表单中填写了一个数字,例如 5。第二天,他提交了与数字 3 完全相同的字段。在数据库中,我想添加而不是覆盖第一个值它了。所以在第 1 天,数据库应该说“5”,但在第 2 天,它应该说“8”。
这是我将使用的基本“input.php”文件。字段的名称将在我的最终代码中更改。
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost", "root", "", "demo");
// Check connection
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
// Escape user inputs for security
$first_name = mysqli_real_escape_string($link, $_REQUEST['first_name']);
$last_name = mysqli_real_escape_string($link, $_REQUEST['last_name']);
$email = mysqli_real_escape_string($link, $_REQUEST['email']);
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES
('$first_name', '$last_name', '$email')";
if(mysqli_query($link, $sql)){
echo "Records added successfully.";
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
// Close connection
mysqli_close($link);
?>
任何帮助,将不胜感激。我想也许我可以使用一些 javascript 验证,但是那将用于验证字段,而不是添加......所以......
谢谢!
解决方案
你需要做两件事。首先,验证记录是否存在。其次,如果存在通过将表单输入添加到列来更新记录。如果不存在,则使用表单输入插入新记录。要更新,您可以编写查询,例如
UPDATE TABLE_NAME
SET column_to_update = column_to_update+form_input_number
WHERE email=<email_address> ;
(假设电子邮件是主键或用任何主键字段名称替换电子邮件)
推荐阅读
- firebase - 使用具有自定义身份验证安全性的 Firebase Cloud Firestore(无 Firebase 身份验证)
- .net - 按下更新异步 intill 键
- python - Python随机频率
- strapi - 如何从 MongoDB 中的 URL 填充 Strapi 中的图像?
- javascript - 滚动行为是否来自 jquery?
- javascript - 使用 pdf.js 以高质量呈现 pdf
- javascript - 压缩母版页 Adobe Forms SAP 中隐藏字段的空间
- mysql - 如何在mysql中使用mysql列作为unix_timestamp
- java - java中的AWS Lambda“在完成请求之前退出进程”
- python - DNS.query 与 Socket.gethostbyname