mysql_query возвращает false при ошибке. Вы должны проверить, что он возвращает:
$query = "SELECT user.* FROM user WHERE id = '$id'"
$result = mysql_query($query);
if ($result === false) {
die($query.'<br/>'.mysql_error());
}
Тогда вы можете понять, почему это не удалось. Я добавил запрос в оператор die()
, чтобы вы могли попробовать запрос также вручную.
Ошибка: неизвестный столбец строки, что говорит о том, что вы не заключаете значение в одинарные кавычки в запросе SQL, хотя код в вопросе делает это.
В процессе производства вы должны предпринять все возможные меры, чтобы гарантировать правильную обработку ошибок. В этом случае вам, вероятно, понадобится то же поведение, что и при поиске пользователя:
header("location:page.php?uid=1");