Unexpected T_CONSTANT_ENCAPSED_STRING error in SQL Query
I am getting an unexpected T_CONSTANT_ENCAPSED_STRING error in the following SQL query:
mysql_query (UPDATE 'wp_posts' SET 'post_status' = 'publish' WHERE 'post_id' = '$id');
Can you g开发者_JAVA技巧uys see where the error might be?
Here is the full code in case it helps:
$key = 'feed';
$post_ids = array(2263, 2249);
foreach ($post_ids as $id) {
$feedurl = get_post_custom_values($key, $id);
$feedurlstr = implode($feedurl);
// Ignore - it determines whether feed is live and returns $result
LiveOrNot($feedurlstr);
if ( $result == "live" ) {
mysql_query (UPDATE 'wp_posts' SET 'post_status' = 'publish' WHERE 'post_id' = '$id');
}
elseif ( $result == "notlive" ) {
mysql_query (UPDATE 'wp_posts' SET 'post_status' = 'draft' WHERE 'post_id' = '$id');
}
endif;
}
Wrap your SQL statements in quote-marks - "
.
mysql_query ("UPDATE 'wp_posts' SET 'post_status' = 'publish' WHERE 'post_id' = '$id'");
mysql_query()
takes a string. PHP is looking for constants interspersed with strings, which is not valid PHP grammer.
You need to delimit your strings, '
and "
are popular choices, but there is also Heredoc syntax.
Read more about strings in PHP.
精彩评论