Прежде всего, как говорится в комментариях, подготовленные заявления - это путь.Вы открыты для SQL-инъекции.
Во-вторых, что касается сообщения об ошибке mysql, похоже, что в конце вашего запроса вы пропускаете ни одну кавычку.WHERE question_id='.$id
.Также вычеркните строку запроса, и вы заметите, что в вашем запросе нет одинарных кавычек вокруг ваших параметров.Вы используете одинарные кавычки для создания строки запроса, но не для параметров запроса.Используйте двойные кавычки для строки запроса и одинарные кавычки для параметров:
"UPDATE `questions` SET
`question`='".$question."', `answer1`='".$answer1."', `answer2`='".$answer2."',
`answer3`='".$answer3."', `answer4`='".$answer4."', `rationale`='".$rationale."',
`resources`='".$resources."' WHERE `question_id`="'.$id."'"