HTML Orijinal sayfaya yönlendirme

7 Cevap php

Ben PHP kodu olan bir sayfalık bir site var. - Büyük kullanıcı presler 'Gönder', bu benim e-posta bilgi gönderir kez, daha sonra eylemi kullanıcıya bir başarı olduğunu söyleyerek bir messagebox gösterir.

Messagebox kapatıldıktan sonra, web sitesi website.com / report.php kalır. Orijinal sayfaya geri yönlendirmek için bir yolu var mı.

Also, any way to change the icon in the messagebox that pops up? Here is the code that I have: <script language="JavaScript">alert("Your request has been sent. I will contact you soon!");</script>

Teşekkürler.

7 Cevap

window.open içine bakmak ve window.location

Uyarınız sonra yerleştirin ()

http://www.tizag.com/javascriptT/javascriptredirect.php

Ayrıca, messagebox simge soru cevap: No, bu tarayıcı bağımlı ve değiştirilebilir değil.

Bunu yapmak istiyorsanız, sizin html / css ve javascript ile sahte ona ihtiyacımız olacak.

    <script language="JavaScript">
alert("Your request has been sent. I will contact you soon!");
window.location.assign("http://website.com");
</script>

Eğer uyarı kutusunda simgesini değiştirmek veya biraz fantezi bakmak yapmak istiyorsanız, siz deneyebilirsiniz YUI dialog

Php header komutunu kullanın

<?php
header("Location: http://www.example.com/"); 
exit;
?>

PHP bir yönlendirme yapmak için bu header("Location: page.php"); kullanın. Önce ve sonra bu kod yanıt için başka çıkış göndererek olmamalıdır. Sonunda exit(); sonra komut sonlandırmak için kullanabilirsiniz.

Doğru bu sayfada daha önce istenen sayfayı gerekiyorsa, o zaman en iyi ne yapabilirim report.php için bağlantı isteği parametresi olarak URL içerir ve yönlendirme hedef olarak kullanmaktır. Örneğin

<a href="report.php?referrer=<?php echo $_SERVER['REQUEST_URI']; ?>">report</a>

ve report.php gizli giriş alanı olarak geçmek:

<input type="hidden" name="referrer" value="<?php echo getParam("referrer"); ?>">

Ve raporunu gönderdikten sonra yapmak:

header("Location: " . getParam("referrer") . ")"; // getParam() returns sanitized GET parameter.

Alternatif Bunun için (yazım hatası dahil evet) $_SERVER['HTTP_REFERER'] başlık kullanmaktır, ancak devre dışı ya da müşteri tarafından sahte olabilir gibi bu sadece güvenilir değildir.

Ben daha zarif bir çözüm basitçe (yerine bir uyarı kutusu) bir onay sayfası ile kullanıcıya sunmak ve orada önceki sayfaya bir bağlantı yer olduğuna inanıyorum.

İşte tüm kullanıcılar için kira iş olur.

Bu kullanıcılar için javascript ile biraz Ajax (jQuery) sizin için formu göndermek ve onay nessage görüntüleyebilirsiniz. Tüm sayfayı terk etmeden kullanıcı (fantezi yönlendirmeleri için gereksinimini inkar) üzerinde.

Uyarısını görüntülemek için bu kodu kullanabilirsiniz:

function displayAlert(message, redirect) {
    alert(message);
    window.location.href = redirect;
}

Daha sonra, benzer bir kod kullanabilirsiniz:

displayAlert("This is the message", "http://redirect.the/user/here");

, Php sonuna doğru, bu kullanın:

header('location: home.php');

Bu orijinal sayfasını yüklemek için tarayıcı neden olacaktır.

Ben standart uyarı kutusu kenara mesajdan değişmiş olabilir inanmıyorum. Ya, başlık ya da düğmelerini değiştirmek olamaz.

Dürüst