т.к в первом запросе полей 5
если ты вставишь инъект:
$id=-1 union select 1,2,3,4,5/*
то эту ошибку выплюнет второй запрос...
вот в этом вся причина твоих бед...
Мысль понятна, но... разве объединение запросов через ";" в мускуле разрешено?
Впрочем, это частный случай заморочки, поэтому очень хотелось бы в каком-нибудь FAQ-е увидеть анализ возможных конструкций запросов в скриптах и варианты инжектов.