ďťż
Podstrony
|
telcocafeWysyłam AJAX-em żądanie POST do serwera. PHP wykonuje akcję, a następnie przekierowuje:header('Location: http://pełny/adres/strony');Dlaczego do przeglądarki dociera cała strona, a nie tylko właściwa część (tym zajmuje się już skrypt PHP)? Czyżby PHP nie przekazał nagłówka:X-Requested-With: XMLHttpRequestktóry wysyłam przy każdym żądaniu AJAX? Na jego podstawie wykrywam, czy to jest AJAX, czy zwykłe żądanie.A co ci nie działa? Cóż. Takie coś nie zadziała. Przekierowanie następuje po stronie przeglądarki. Gdy w skrypcie pojawia się nagłówek 'Location: adres', strona jest wysyłana do przeglądarki (zapewne z Twoim nagłówkiem X-*). Przeglądarka widzi przekierowanie, więc je wykonuje, ale to przeglądarka znów wysyła swoje nagłówki, więc Twój nagłówek, który został wysłany do przeglądarki (!), już się nie pojawi w jej zapytaniu. Zresztą czy tak trudno sprawdzić jakie nagłówki są przesyłane na serwer? Pytasz czy PHP nie wysyła nagłówka. Owszem, wysyła (co możesz sprawdzić, np., w Firebugu; rzecz nietrudna), ale do przeglądarki. Użytkownik andrzej_aa edytował ten post 08 styczeń 2010, 01:36 Chodzi o to, że przeglądarka po przekierowaniu nie wysyła drugi raz nagłówka X-Requested-With: XMLHttpRequest. Jeszcze to sprawdzę w innych przeglądarkach. Może to bug, a może feature :) A po jakiego grzyba wywołujesz ajaxem akcję, która ma zakończyć się przekierowaniem? |
|||
Sitedesign by AltusUmbrae. |