PHP Timer ile yönlendirme?

8 Cevap

10 saniye dedikten sonra nasıl PHP ile bir yönlendirme yapabilirsiniz ...

Ben, bu konuda çok okudum javascript ile daha iyi olurdu gibi görünüyor var. Ama PHP kodlama bana bir sürü kaydetmek istiyorsunuz.

Peki nasıl PHP zamanlayıcı ile bir yönlendirme yapabilir?

Teşekkürler

8 Cevap

Eğer PHP komut 10 saniye boyunca uyku neden olabilir,

sleep(10);

ama bu bir yanıt olmayan sunucu olarak son kullanıcıya görünecektir. En iyi seçenek, bir meta yenileme ya da kullanmak için,

<meta http-equiv="refresh" content="10;url=http://google.com">

veya javascript.

setTimeout(function(){
  window.location = "http://google.com";
}, 10000);


Daniel'e açıklamalarda bulundu:

header('Refresh: 10; URL=http://yoursite.com/page.php');

hiçbir Javascript veya HTML gerektirir, bu durum için ideal olacaktır.

header ('Refresh: 10; URL = http://yoursite.com/page.php');

Aksi takdirde, o iş olmaz, sayfanın başlık bölümündeki içinde bu PHP kodu yerleştirin.

Bu PHP komut uyku yapmak için kötü bir fikirdir. Aslında sunucu kolayca CGI olarak çalışan, özellikle bellekte PHP komut yeterli kaynaklarını tüketen ;) DoS bir yoldur.

Bu sunucu tarafında çalışan ve gecikme sırasında kullanıcıya yararlı geribildirim vermeyecektir olarak PHP bunun için muhtemelen yanlış teknolojidir.

Bu Javascript kodlama bir sürü değildir. this link sayfanızda bu uygulamak çok kolay bir şekilde görün

Bir istemci taraflı yönlendirme yapmak isteyeceksiniz:

<meta http-equiv="refresh" content="5;url=http://yourdomain.com"/>

ama PHP olmak zorunda gibi hissediyorum, sen gibi bir şey yapabilirsiniz:

<?php

// wait 5 seconds and redirect :)
echo "<meta http-equiv=\"refresh\" content=\"5;url=http://yourdomain.com\"/>";

?>

Web Sayfası yüklendikten sonra, PHP artık çalışır. Bu sayfaya verileri aktarmak için AJAX gibi bir şey (Javascript bir PHP sayfasını çağırarak) kullanmadığınız sürece sayfa yüklendikten sonra PHP ile bir şey yapmak anlamına gelir. Bu yönlendirme üzerinde istenen 10 saniye bekleyin ulaşmak için birkaç yöntem ile size sunar.

İlk olarak, 10 saniye için () script uyku söyleyebilirdi. Ancak bu, Johnathan belirtildiği gibi, sizin sayfa sadece kullanıcının yönlendirildiği için, gerçekten yavaş gibi bakmak demektir.

sleep(10);

Ayrıca sadece 10 saniye sonra kendisini yönlendirmek için sayfayı bildirir bir META etiketi düşebilir. Neredeyse başka bir kodlama dahil değil gibi sadece META etiketinde damla, ve tüm javascript ile uğraşmak zorunda değilsiniz gibi, bu tercih edilen bir yöntemdir.

<meta http-equiv="refresh" content="10;url=http://example.com"/>

Sonra da JavaScript sorunu = "bleh" a location.href olabilir; 10 saniye bekledikten sonra komut.

Kayda değer bir başka yöntem PHP'nin header() fonksiyonu ile bir Location HTTP başlık gönderiyor. Javascript ve meta etiketlerini önler sağlam bir çözüm istiyorsanız, duyarlı web uygulaması tutarken Yani, bu bir iframe (veya çerçeve) ve orada yükleme aşağıdaki içeren bir php script oluşturarak olabilir:

sleep(10);
header("Location: http://my.redirect.location.com");

Bu senaryoyu denemek ve iş olacak!

<?php
$msg ="This Is Just Checking";
header('Refresh: 5; URL=http://www.google.com.pk');
?>

<body>
<?php echo $msg  ?>
</body>
</html>