redirect — форма не перенаправляет после размещения заголовка в PHP не работает

Мое перенаправление заголовка PHP не работает, и я не могу понять, почему. Я прочитал много вопросов, и ничего, что я пробовал, похоже, не работает.

<?php
define('DBHOST','shareddb1d.hosting.stackcp.net');
define('DBUSER','JoplinLeftHand-3231135a');
define('DBPASS','Banoodle1!');
define('DBNAME','JoplinLeftHand-3231135a');

$link = mysql_connect(DBHOST, DBUSER, DBPASS);

if (!link) {
die('Could Not Connect: ' . mysql_error());
} else {
echo "You Are Connected<br>";
}

$db_selected = mysql_select_db(DBNAME, $link);

if (!$db_selected) {
die('Can\'t Use ' . DBNAME . ': ' . mysql_error());
} else {
echo "Database Selected";
}
$tid = $_POST['tid'];
$first = $_POST['first'];
$last = $_POST['last'];
$zip = $_POST['zip'];
$descrip = $_POST['descrip'];

$sql = "INSERT INTO tracking (tracking_id, tracking_first, tracking_last, tracking_zip, tracking_descrip) VALUES ('$tid', '$first', '$last', '$zip', '$descrip')";

if (!mysql_query($sql)) {
die('Error: ' . mysql_error());
} else {
header("Location:/?p5");
}

0

Решение

header('Location: ...'); должен быть первым выводом скрипта, иначе он не будет работать. Ты используешь echo дважды перед выполнением перенаправления, здесь:

echo "You Are Connected<br>";

и здесь:

echo "Database Selected";

Кроме того, НЕКОТОРЫЕ клиенты требуют URL, переданный в Location заголовок должен быть абсолютным URL, а не относительным, например:

header("Location: http://example.com/?p5");
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector