2015-11-02 185 views
-6

我正在用PHP創建一個基本站點。 在這裏,我有代碼不會工作。我想將頁面重定向到另一個頁面。我們使用header,但它不工作。無法重定向到PHP中的另一個頁面

是否有任何提示在PHP中重定向?

+3

可能重複的[Php標題位置重定向不工作](http://stackoverflow.com/questions/21226166/php-header-location-redirect-not-working) – Suyog

+0

你可能無法設置標題,因爲你吐用echo()去掉身體。順便說一句,請始終提供您收到的實際結果(例如在瀏覽器中)。 – pwes

+0

刪除echo之前的所有'echo'和'print'語句。這意味着在標題之前不應該有任何輸出,否則它不會重定向。 –

回答

0
if(!$k) 
{ 
    echo "Koneksi Gagal <br>"; 
    echo mysqli_errno(); 
} 
else 
{ echo "Koneksi Berhasil"; 
} 

你的if-else中的任何一個都會運行並寫入響應。

寫入響應後無法重定向。

呼應或任何其他輸出

0

不能使用頭回音後,因爲頁面已經被創建這些回聲,它甚至應該返回您出現以下錯誤:

Warning : Cannot modify header information – headers already sent by (your file) 

你必須首先刪除所有與您的迴音的話,它應該工作就像一個魅力

你必須與回聲消除這些行:

+0

我可以做到這一點。謝謝你的回答,謝謝 – testerslol

+0

沒有問題,別忘了把你的問題解決:) – Nirnae

0

嘗試用這條線更換頭之前重定向設置header("Location : select.php");

echo "<META http-equiv='refresh' content='5;URL=select.php'>"; 
0

你必須調用該JavaScript函數,只是這個嘗試: -

echo "<script> 
function myFunction() 
{ 
setTimeout(function(){ location.href='your file name'; }, 5000); 
} 
myFunction(); 
    </script>"; 

和你正在寫「select.php」,但如果你在本地主機上工作,那麼你必須這樣寫: -

location.href='http://localhost/folder_name if you have/select.php' 

,如果你是在服務器上的工作那麼這將是: -

location.href='http://host ip/folder name/select.php' 
0
<?php 

$k = mysqli_connect("localhost","root","","ubm_2015"); 

if(!$k) 
{ 
    echo "Koneksi Gagal <br>"; 
    echo mysqli_errno(); 
} 
else 
{ echo "Koneksi Berhasil"; 
} 

$nama = $_POST['nama']; 
$motor = $_POST['vhc']; 
$hobi = $_POST['hobi']; 

$query = "insert into data_mhs(nama,motor,hobi) values ('$nama','$motor','$hobi')"; 

mysqli_query($k,$query); 

// echo " Query Berhasil "; 

header("Location : select.php"); 


?> 

這是因爲你使用的回聲。頭文件函數不會運行,因爲回聲是先運行的。您不能同時執行帶有標頭的回顯,因此回顯將首先運行,並且標頭將被忽略。如果你想在新文件中執行echo,也許你可以使用_GET函數。

在實際文件:

header("Location : select.php?echo=Query%20Berhasil"); 

在select.php:

$echo = $_GET['echo']; 

希望我可以幫你,否則爲元刷新,我會建議使用頭函數來代替。

相關問題