2016-03-07 35 views
-3

需要用不同的WHERE更新不同的值。PHP - 更新和设置多个变量与不同的地方

$facebook = $_POST["facebook"]; 
$twitter = $_POST["twitter"]; 
$instagram = $_POST["instagram"]; 

$sql = "UPDATE footer SET link='$facebook' WHERE name='Facebook' AND SET link='$twitter' WHERE name='Twitter' AND SET link='$instagram' WHERE name='Instagram'"; 
+1

你能提供更详细一点? – toomanyredirects

+0

$ sql =“UPDATE footer SET link ='$ facebook'WHERE name ='Facebook'AND SET link ='$ twitter'WHERE name ='Twitter'AND SET link ='$ instagram'WHERE name ='Instagram'”; 不工作 –

+0

我需要立即更新Facebook,Twitter和Instagram –

回答

0

你可以表达的情况下做到这一点:

$sql = "UPDATE footer SET link = case when name='Facebook' then '$facebook' 
             when name='Twitter' then '$twitter' 
             when name='Instagram' then '$instagram' 
            end 
+0

完美工作!谢谢。 –

+0

如果解释OP在其语法中所犯的错误,这将会是一个更好的答案。在UPDATE中只使用一个SET和一个WHERE子句。 http://dev.mysql.com/doc/refman/5.7/en/update.html –

+0

@ Fred-ii-谢谢你 –