В следующем коде (который по ссылке Pastebin выше):
foreach($form_data as $name=>$value)
{
mysqli_query($db, "UPDATE $mysql_table SET $name='".mysqli_real_escape_string($db, $value)."' WHERE ID=$id") or die('Failed to update table!<br>'.mysqli_error($db));
}
mysqli_close();
header('Location: '.$success_url);
exit;
Вам нужно чтобы связать связь или ссылку, сгенерированную во время соединения в операторе mysqli_close(), чтобы он знал, какой из них закрыть (т.е. вы можете иметь более одного открытого одновременно). Если вы измените свой фрагмент, чтобы использовать следующую строку, ошибка закрытия должна исчезнуть.
mysqli_close($db);
После того, как ошибка закрытия исчезнет, проблемы с заголовком перенаправления на следующей строке могут работать. Я говорю, может, потому что, если у вас есть другой выход, прежде чем вы выпустите заголовок, он будет продолжать сбой. Заголовки могут использоваться только успешно, когда веб-страница не сгенерировала другой вывод без заголовка.
В качестве дополнительной заметки вы можете создать одну большую строку SQL вместо обновления базы данных для каждого возвращаемого поля. Тем не менее, это пища для еще одного изучения и/или будущего вопроса.
IT понятно: вы используете 'mysqli_close();' без парметера, должно быть ... поэтому проверьте doc mysqli_close(), чтобы узнать, чего он ожидает. см. http://stackoverflow.com/questions/24027546/warning-mysqli-close-expects-parameter-1-to-be-mysqli – Random
RTFM: http://php.net/mysqli_close –
Почему люди размещают ссылку? вместо того, чтобы просто размещать важные части? – PHPhil