А что сказать? Что за проблемы у вас я не знаю, это всю тему перечитать надо, но если только об этом посте, то я не понимаю смысла этого действа:
$num = mysql_num_rows($VB);
$i = 0;
while ($i < $num) {
$vbi[$i] = mysql_fetch_object($VB);
$i++;
}
это ради чего такое колдовство?
Не понимаю зачем так "для себя" ошибки проверять, чтобы потом выковыривать. То есть серверная сторона "не то", а значит и клиентской стороне "не сладко".