0

我对 PHP/MySQL 很陌生,需要更新表单方面的帮助。

我从表单中获取值,在更新查询中我只想更新不为空的字段,其中 id = $id。

例子;

$a = $_POST['a'];
$b = $_POST['b'];
$c = $_POST['c'];

$1 = $_POST['number1'];
$2 = $_POST['number2'];
$3 = $_POST['number3'];

$sql = "UPDATE table SET a='$a', b='$b', c='$c' WHERE number='$1' OR number='$2' OR number='$3' ";

但是如果 $b 为空或 null 它应该从更新字符串中排除,但 $a 和 $c 应该用新值更新。$b 的 allredy 现有值应保留在表中。

问候, 克里斯基斯

4

2 回答 2

1

chrickis,您在编写代码时应该遵循 php 规范,但是对于您的问题,您可以在

$condition = ''; //create new varible

$b = isset($_POST['b'])?$_POST['b']:""; //check for data in field b

if($b){ $condition = "b='".$b."', "; } //write sql condition if $b has any value

 $sql = "UPDATE table SET a='$a', ".$condition." c='$c' WHERE number='$1' OR number='$2' OR number='$3' "; //modify sql
于 2013-11-06T11:40:13.950 回答
0

我建议首先检查所有解析的值,并在此基础上使用代码 php 进行更新查询。

于 2013-11-06T11:43:31.443 回答