php - 使用 Update CONCAT 将数据添加到数据库中已有的数据

标签 php mysql

我正在尝试在数据库内进行程序更新,但我有一个担心。 当我向 mysql 服务器发出更新语句时,我希望它向 MYSQL 数据库添加另一个数据,它只是覆盖那里的第一个数据并将新数据保存到数据库中。我想要它做的是将另一数据添加到数据库以及那里已经存在的数据。

我的代码如下

<?php
session_start();
require_once('inc/config.php');
if(!isset($_SESSION['username'])){
    header('Location: signon.php');
}
?>

<?php
require_once('inc/config.php');

$con = mysqli_connect($host, $user,$pass, $db) or die ('Cannot Connect: '.mysqli_error());
//get parameters

$inst_name = mysqli_real_escape_string($con,$_POST['inst_name']);
$inst_name2 = mysqli_real_escape_string($con,$_POST['inst_name2']);
$grade = mysqli_real_escape_string($con,$_POST['grade']);
$study_course = mysqli_real_escape_string($con,$_POST['study_course']);
$qualification = mysqli_real_escape_string($con,$_POST['qualification']);
$other_qualification = mysqli_real_escape_string($con,$_POST['other_qualification']);
$completion_year = mysqli_real_escape_string($con,$_POST['completion_year']);


$data ="inst_name = '".$inst_name."',inst_name2 = '".$inst_name2."',grade = '".$grade."', study_course = '".$study_course."',qualification = '".$qualification."',other_qualification = '".$other_qualification."',completion_year = '".$completion_year."'";


//$sql = "UPDATE user_info SET inst_name = '".$inst_name."',inst_name2 = '".$inst_name2."',grade = '".$grade."', study_course = '".$study_course."',qualification = '".$qualification."',other_qualification = '".$other_qualification."',completion_year = '".$completion_year."' WHERE username = '".$_SESSION['username']."'";

$sql = "UPDATE user_info SET $data=CONCAT($data,inst_name = '".$inst_name."',inst_name2 = '".$inst_name2."',grade = '".$grade."', study_course = '".$study_course."',qualification = '".$qualification."',other_qualification = '".$other_qualification."',completion_year = '".$completion_year."') WHERE username = '".$_SESSION['username']."'";
mysqli_query($con,$sql) or die ('Failed Query: '.mysqli_error($con));
mysqli_close($con);
    header("Refresh:0; url=EDWE.php");
    ?> 

我显然做错了什么。

最佳答案

要创建新记录而不是更新现有记录,请尝试使用 SQL INSERT 语句而不是使用 UPDATEINSERT 创建记录,UPDATE 编辑现有记录。

关于php - 使用 Update CONCAT 将数据添加到数据库中已有的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45319891/

相关文章:

php - 使用在某些字段中具有多个值的 MySQL 查询创建一个表

mysql - 按多个字段排序 Magento 自定义集合

php file_get_contents() 返回 false 和一个有效的 url

php - json_decode 删除字符串数字中第一个字符处的零

php - codeigniter Controller 不工作

php - 当他们使用电子邮件登录时从表中获取用户名

mysql - 在 .sql 脚本中使用从 MYSQL 客户端传递的 -D 参数值

javascript - 是否可以通过网站在主机上运行 exe 文件?

php - 将数组输出转换为对象的最佳策略?

mysql - 大量小型 MySQL 数据库的云服务?