Мое перенаправление заголовка 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");
}
header('Location: ...');
должен быть первым выводом скрипта, иначе он не будет работать. Ты используешь echo
дважды перед выполнением перенаправления, здесь:
echo "You Are Connected<br>";
и здесь:
echo "Database Selected";
Кроме того, НЕКОТОРЫЕ клиенты требуют URL, переданный в Location
заголовок должен быть абсолютным URL, а не относительным, например:
header("Location: http://example.com/?p5");
Других решений пока нет …