PHP:在单个查询中更新多个 MySQL 字段

2022-08-30 21:33:44

我基本上只是尝试更新表中的多个值。最好的方法是什么?以下是当前代码:

$postsPerPage = $_POST['postsPerPage'];
$style = $_POST['style'];

mysql_connect ("localhost", "user", "pass") or die ('Error: ' . mysql_error());
mysql_select_db ("db");

mysql_query("UPDATE settings SET postsPerPage = $postsPerPage WHERE id = '1'") or die(mysql_error());

我想包括的另一个更新是:

mysql_query("UPDATE settings SET style = $style WHERE id = '1'") or die(mysql_error());

谢谢!


答案 1

添加带逗号分隔的多列:

UPDATE settings SET postsPerPage = $postsPerPage, style= $style WHERE id = '1'

但是,您没有清理输入??这意味着任何随机黑客都可能破坏您的数据库。请参阅此问题:使用 PHP 清理用户输入的最佳方法是什么?

另外,样式是数字还是字符串?我假设一个字符串,所以它需要被引用。


答案 2

用逗号分隔这些值:

UPDATE settings SET postsPerPage = $postsPerPage, style = $style WHERE id = '1'"

推荐