@viktorross

Как исправить ошибки syntax?

Здравствуйте, помогите пожалуйста исправить ошибки

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING

public function makeFeatured($id)
	{
		global $db;
		$res = $db->query('update ' . TABLE_ADS . ' set `featured`=1 where `id`=\'' . $id . '\'');
		$this->addOption($id, 'featured');
		$res_actions = $db->query('update ' . TABLE_ACTIONS . ' set pending=0 where type like \'featured\' and object_id=' . $id);
	}


и

Parse error: syntax error, unexpected T_OBJECT_OPERATOR on line 178
$result = @mysqli_query($this->link, $this->sql);
		->query_count++;


не понимаю что не так
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 1
Immortal_pony
@Immortal_pony Куратор тега PHP
$db->query('insert into ' . TABLE_OPTIONS . ' set `object_id` = \'' . $id . '\', `option` = \'' . $type . '\', `date_added` = \'' . $timestamp . '\\', ' . $str_expires . ' ');
    return 1;
  }


Вы запутались там в слэшах и апострофах. У меня нет даже четкого понимания, каким должен быть правильный код.
Используйте подготовленные выражения, чтобы избежать подобных ошибок. Ну или хотя бы форматируйте код как-то так:

$table_options = TABLE_OPTIONS;
$db->query("
    INSERT INTO {$table_options}
    SET 
        `object_id`='{$id}',
        `option`='{$type}',
        `data_added`='{$timestamp}',
        `date_expired`='{$str_expires}'
");
return true;


$result = @mysqli_query($this->link, $this->sql);
    ->query_count++;

Здесь во второй строке вы используете оператор ->, но перед ним не стоит никакого объекта.
Возможно код должен выглядеть так. Точнее сказать невозможно без остального кода:
$result = @mysqli_query($this->link, $this->sql);
$query_count++;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы