gpt4 book ai didi

php - 更新mysql而不替换空字段

转载 作者:行者123 更新时间:2023-11-30 00:31:09 24 4
gpt4 key购买 nike

我正在尝试进行更新而不替换空字段,例如,如果我有字段号 1 并且它是空的,数据库中不会发生任何事情,但如果字段号 2 有一些内容,我希望它被更新。发生的事情是,当我这样做时,空字段会进入数据库并将该字段的内容替换为空值。

我需要一个示例来说明如何做到这一点。

PD:我正在使用 PHP OOP。

这是我的查询:

$conio = "UPDATE affiliates SET nickname = '$nickname', fullname = '$fullname' , email = '$email', skype = '$skype', country = '$country', address = '$address', city = '$city', zip = '$zip', bankname = '$bankname', bankaccount = '$bankaccount', beneficiary = '$beneficiary', username = '$username', password = '$password', whene = '$whene' WHERE id = '$users'";
mysqli_query($this->link, $conio) or die (mysqli_error($this->link));

最佳答案

示例:如果您想更新值不为空的输入。

<?php
...
$sql = "UPDATE affiliates SET ";
$sql_where = "WHERE id = '$users'";
$sql_set = "";

$firstName = $_POST['firstName'];
if(!empty($firstName))
$sql_set .= "firstName = '$firstName',";

$lastName = $_POST['lastName'];
if(!empty($lastName))
$sql_set .= "lastName = '$lastName',";

对于所有其他输入也是同样的事情.........

mysql_query($sql.$sql_set.$sql_where);

当然有更好的方法来编写此代码(例如:对 $_POST 的元素使用 for 循环),但这就是概念,...

关于php - 更新mysql而不替换空字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22508346/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com