2015-09-30 3 views
1

Я написал сценарий для обновления базы данных MySql из формы.Перенаправление PHP перестало работать?

После обновления базы данных я хочу, чтобы страница автоматически перенаправлялась на другую страницу.

Это работает отлично, однако, поскольку переключение хостинг-провайдера не на мои сайты перенаправляет работу.

Вот код:

<?php 
$servername = "localhost"; 
$username = "XXX"; 
$password = "XXX"; 
$dbname = "XXX"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$id= $_POST[id]; 
$dob=$_POST[dob]; 

$sql=("update users set dob='$dob' where id='$id'")or die('Error 23 ' . mysql_error()); 

if ($conn->query($sql) === TRUE) { 
    echo "Updated successfully<br /><br />"; 
} else { 
    echo "Error: " . $sql . "<br>" . $conn->error; 
} 
?> 
<?php 
header("location:index.php?action=updated"); ?> 

Когда я запускаю код обновления БД, но страница просто отображает Updated successfully?

+0

и может переместить код перенаправления, я: е функции заголовка к тому, если часть после вывода сообщения обновленного успешно – Gautam

+0

есть ли файл .htaccess в корневой папке домена ? если да, то удалите его, а затем увидите, что заголовок работает или нет? –

+0

Перемещение кода не повлияло. –

ответ

0

Не эхо ничего и попытаться перенаправить потом. Вместо этого просто перенаправляйтесь без эха.

if ($conn->query($sql) === TRUE) { 
    header("location:index.php?action=updated"); 
    exit; 
} else 
    echo "Error: " . $sql . "<br>" . $conn->error; 
+0

Он по-прежнему не перенаправляет? –

+0

Можете ли вы опубликовать весь код? Например, http://pastebin.com/? – Jan

4

попробовать с помощью JavaScript для перенаправления, как показано ниже:

if ($conn->query($sql) === TRUE) { 
    echo "<script> 
      alert('Updated successfully'); 
      window.location.href = 'index.php?action=updated'; 
     </script>"; 
} 
+0

Отлично, он перенаправляет. Любая идея, почему я не могу использовать PHP для этого? –

+1

Если вы используете функцию заголовка, она будет напрямую перенаправлять вас, не сообщив, что оно успешно обновлено. – Gautam

0

попробовать это:

<?php 
ob_start(); 
header('Location: http://www.example.com/index.php?action=updated', true); 
?> 
+0

Nope не перенаправляет? –

+0

использовать ' 'this перед заголовком –

Смежные вопросы