Bazen PHP gizemli başarısız yönlendirerek?

4 Cevap php
@header('Location: ' . $uri);

Ama sadece nadiren olur, sorun ne?

4 Cevap

@ hatayı baskıladıkları ve günlüklerini denetlemek için kullanmayın, bir kaç şey biridir:

  1. Yönlendirmeyi durdurma önceki hata çıktı?
  2. $ Uri bazen kötü
  3. Kodunuzu başka bir şey kötüdür.

Hata ayıklama cevaptır.

Belki komut nedense ondan önce bazı çıktı gönderiyor. @ çıkarın.

Başlıklar nedeniyle zaten boşluklarla gönderildi Şey, çünkü büyük olasılıkla. Eğer görüntülenen hataları durağı önünde bir @ işareti var çünkü bu asla bilemeyeceğim.

Genellikle bu boşluk başka bir hata neden olabilir, ya da belirli bir dosyayı zaman sadece ortaya çıkabilir.

Diğer olasılık $url düzgün biçimlendirilmiş, ya da bir şekilde başlık sadece tarayıcıya yanlış görünüyor olmasıdır. Bu durumda tarayıcı bunu görmezden seçebilirsiniz. Gönderdiğiniz tam Başlığını echo ve doğru görünüyor emin olun.

Son olarak, bazı tarayıcılar arka arkaya pek çok kez yönlendirildi varsa yönlendirme duracaktır.

Başlığı hemen gönderilecektir olmayabilir. Her zaman die() header() sonra kullanın.