php - 如果 ID 存在则更新行,否则插入

标签 php mysql

这是 .php 文件的代码。列“memberid”具有唯一索引。当用户输入具有现有 memberid 的记录时,必须更新该记录,否则将创建新行。

我还想显示一个警报框。为了测试目的,我像下面的方式添加了,但它没有触发。没有显示任何消息。

我也想知道自动处理插入/更新是否是正确的方法?

<META http-equiv="refresh" content="2; URL=socialprofile.html">
<?php
error_reporting(E_ALL ^ E_NOTICE);
require_once("../Lib/dbaccess.php");

    //Retrieve values from Input Form
    $CandidateID = $_POST["inCandidate"];
    $SocialProfile = $_POST["inActivities"];

    $InsertQuery = "INSERT INTO candidate_db_social (memberid, socialactivities, lastupdated) VALUES (".$CandidateID.",'".$SocialProfile."',now())";
    $UpdateQuery = "UPDATE candidate_db_social SET socialactivities='".$SocialProfile."', lastupdated=now() WHERE memberid=".$CandidateID;
    try
    {
        $Result = dbaccess::InsertRecord($InsertQuery); 
    }
    catch(exception $ex)
    {
        $Result = dbaccess::InsertRecord($UpdateQuery);
        echo "<script type='text/javascript'>alert('".$ex."');</script>";
    }
?>

最佳答案

关于php - 如果 ID 存在则更新行,否则插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2019510/

相关文章:

php - 如果基于非唯一列尚不存在则插入新行

php - 如何使用准备好的语句插入多个MySQL表

MySQL LIKE 和 NOT LIKE 搜索同一列

php - 返回一个在 MySQL 表中找不到的值?

php - 修复sql查询(更新mysql之前工作)

php - 简单的Javascript MYSQL校验函数

php - 将 sql 与当前登录用户相加

php - 503 服务不可用,PHP 5.3 Web 应用程序

php - 数据未插入第二个表 (MYSQLi)

php - 在数据库中找不到 Moodle 值