我是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现有值应保留在表中。
此致 Chrickis
答案 0 :(得分: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
答案 1 :(得分:0)
我建议首先检查解析的所有值,并在此基础上编写php以进行更新查询。