Kafa fonksiyon bana sıkıntı veriyor [yinelenen]

3 Cevap php

Possible Duplicate:
Cannot modify header information - headers already sent, Why its happening

Hi I am new with php and I was hoping you could help. I hav a function that uses the javascript alert:

Function promptuser($msg)
{

 echo "<script type='text/

javascript'>

alert('$msg');

</script>";

}

Şimdi 'prompt.php' adlı bir dosya altında bu fonksiyonu kaydettiniz.

Şimdi benim ana sayfa:

Require ("prompt.php");

promptuser("you are in");

Header("location: index.php");

Exit;

Hata alıyorum:

"cannot modify header information - headers already sent...". 

Please help Thanx

3 Cevap

iyi, sorun oldukça fazla hata iletisinde açıklanan.

HTTP Protokolü (başlık olarak adlandırılır) Key: Value çiftlerinden oluşan bir grup ve (hayır biçimi vardır) organı olarak bir istek yanıt tanımlar: biraz arka plan bilgisi vermek. header() function böyle bir key: value çiftini gönderir, ama zaten vücut gönderirken başladı zaman, bunu yapamazsın (sizin echo).

Ayrıca, bir Yer başlık mevcut olduğunda tarayıcılar, normalde herhangi bir gövde gösterisi olmadığını bilmeli. Yani istemini yankılanan hiçbir gerçek faydası yoktur.

Eğer header göndermeden önce, metni yankılanan ediyoruz. Yani, yasak headers her zaman müşteriye gönderilecek ilk şey olmalıdır. Sanırım, uygulamanızın tasarımını değiştirmek gerekir.

İlk olarak, değişim echo " alert('$msg'); "; için echo " <script>alert('$msg');</script> ";

İkincisi, sizin durumda echo, çıktı bir şey sonra başlıkları gönderemezsiniz.

Ancak, bunun yerine başlık göndermek, bunu yapabilirsiniz:

echo " <script>window.location = "MyURL";</script> ";