【发布时间】:2020-07-19 15:33:26
【问题描述】:
我正在创建一个 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;
}
?>
【问题讨论】:
-
电话号码后面缺少引号,所以我很惊讶它执行查询时没有语法错误,但是您的代码不会检查它是否执行。您应该出于各种原因使用准备好的语句,引号就是其中之一 - 当您的用户姓氏是
O'Hara时会怎样?。 -
@droopsnoot 这只是为了证明应用程序能够更新记录,愚蠢的是我错过了一个引号,但不幸的是它仍然没有用。记录仍被插入而不是更新
标签: php mysql phpmyadmin cpanel