UPDATE 语句不会在新服务器上触发


UPDATE statement doesn't get triggered on new server

foreach($article AS $key => $value)
{
    mysql_query("UPDATE articles SET description = '".mysql_real_escape_string($value)."' WHERE id = '".$key."'");
}

嗨,伙计们,

我有一个非常简单的 foreach 循环,我在其中运行一个 UPDATE 查询。是的,我知道我应该使用 PDO,但我只是在测试它,所以不用担心。$key$value 不为空。我已经验证了它们的值是预期的值。$value包含具有多个 '(换行符)的字符串。

现在脚本在我的服务器上工作,但是一旦我在另一台服务器上尝试,UPDATE 语句就不会被触发。没有错误或警告。似乎其他服务器不喜欢$value的内容。事实上,如果我用"abc"替换$value,它可以工作。所以我在这里试图了解问题所在。'?mysql_real_escape_string?我应该怎么做才能调试此问题?

对不起,这是我的错。脚本有效。这是由于与我的云实例的 CDN 缓存相关的解释非常复杂和冗长的事情。管他呢!不好意思。

foreach($article AS $key => $value)
{
    mysql_query("UPDATE articles SET description='{mysql_real_escape_string($value)}' WHERE id='{$key}'");
}

试试这个