PHP / MySQL-UPDATE查询插入新记录,而不是更新记录

时间:2020-04-07 12:30:27

标签: php mysql phpmyadmin cpanel

我正在创建一个Swift应用程序,功能之一是用户可以更新其用户详细信息,并将通过PHP复制到MySQL数据库中。

但是,当通过HTTP请求执行查询时,新记录将插入数据库中,而不是更新用户ID对应的位置。任何建议将不胜感激。

谢谢。

<?php

    require 'Config.php';

    $db = mysqli_connect($DB_HOST, $DB_USERNAME, $DB_PASSWORD);

    if($_SERVER['REQUEST_METHOD']=='POST') {
        $userId = $_POST['UserId'];
        $forename = $_POST['ForeName'];
        $middleName = $_POST['MiddleName'];
        $surname = $_POST['Surname'];
        $emailAddress = $_POST['UserEmailAddress'];
        $gender = $_POST['Gender'];
        $mobileNumber = $_POST['PhoneNumber'];

        $dbconnect = mysqli_select_db($db, $DB_NAME);

        $query = "UPDATE c1723141_algoTrading.tbluser SET UserEmailAddress='$emailAddress',Forename='$forename',Surname='$surname',Gender='$gender',PhoneNumber='$mobileNumber,MiddleName='$middleName' WHERE c1723141_algoTrading.tbluser.UserId='$userId'";

        mysqli_query($db, $query);

        echo $query;
    }

?>

1 个答案:

答案 0 :(得分:0)

请检查您是否具有主键列。如果不是,请创建一个并设置为auto_increment。 其他您可以做的是,如果您的UserId列是整数,则将其设置为主键。我认为查询没有错误。如果无法解决,请还原,将找到其他解决方案