• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Skrypt php pomija wszystkie funkcje echo.

VPS Starter Arubacloud
0 głosów
251 wizyt
pytanie zadane 13 grudnia 2015 w PHP przez Widemo Użytkownik (920 p.)
edycja 26 grudnia 2015 przez Widemo

Witam mam problem z ponizszym kodem tzn pomija on cale echo odrazu idzie do register_form.php, na poczatku sktyptu mam ob_start(), ale nic nie daje .

Witam ponownie. Czy moglby mi ktos powiedziec co zrobic zeby dzialalay przekierowania header nie z js i zeby nie pomijalo echo?

 

	if(!empty ($db -> query("SELECT `ip` FROM `users` WHERE `ip` = '" . $ip .  "' ") -> fetchAll())){
		echo "<script type='text/javascript'>
       alert('Sorry, but ip:  " . $ip . " is registered in us data base');</script> ";
		header("Location: register_form.php");
		exit;
	}

 

2 odpowiedzi

+1 głos
odpowiedź 13 grudnia 2015 przez Ivan Maniak (60,650 p.)
No tak bo PHP to nie js cały kod wykonuję się w "jednym momencie", najprościej będzie jeżeli stworzysz przekierowanie w js [window.location.href = "register_from.php"].
komentarz 13 grudnia 2015 przez Widemo Użytkownik (920 p.)
Zadzialalo. A mam pytanie, da sie zrobic tak by ten formularz sie nie usuwal po tym przekierowaniu?
komentarz 13 grudnia 2015 przez Ivan Maniak (60,650 p.)
Nie rozumiem jaki formularz, ale jeżeli po przekierowaniu to po prostu dodaj go do kodu :)
komentarz 27 grudnia 2015 przez Widemo Użytkownik (920 p.)
Jest to formularz rejestracji, i gdy wykryje blad ma powiadomic alertem w js i przekierowac do register_form.php ale nie w js, i problem jest taki ze jak daje w php header("Location:register_form.php"); to wywala wszystkie polecenia echo
0 głosów
odpowiedź 27 grudnia 2015 przez writen Nałogowiec (29,060 p.)
Ale nie możesz wywołać echo przed wysłaniem nagłówka. Nagłówki należy wysyłać w pierwszej kolejności, dopiero później treść.

Zapewne nie masz pojęcia do czego służy funkcja ob_start() i jak z niej korzystać. Najlepiej nie korzystaj i zapomnij o niej.

Jeśli chcesz wyświetlić jakiś komunikat po przekierowaniu możesz skorzystać z mechanizmu Flash Messages. Możesz sam napisać sobie do tego skrypt, ale w internecie znajdziesz masę gotowych klas.
komentarz 27 grudnia 2015 przez efiku Szeryf (75,160 p.)
Czemu ma o niej zapomniec?:) Fakt, ze php potrafi sobie samo juz sterowac naglowkami i nie pokazuje smiesznego bledu header already send. Jednakze jakbym chcial cos poszalec z odczytem zawartosci pliku ( fpassthru ) to by sie przydalo :D
komentarz 27 grudnia 2015 przez writen Nałogowiec (29,060 p.)

Teraz lepiej niech zapomni. Na pewnym etapie, jak będzie już gotowy, to sobie przypomni. laugh

komentarz 29 grudnia 2015 przez Widemo Użytkownik (920 p.)
Własnie dlatego jak czegos nie wiem to pytam na forum. PHP nie ucze sie długo, ale staram sie rozwijac a twoja odpowiedz o tym zebym zapomnial jakos wiele nie pomaga.
komentarz 29 grudnia 2015 przez writen Nałogowiec (29,060 p.)
A ty przeczytałeś jedynie drugie zdanie mojej odpowiedzi?

Podobne pytania

+1 głos
3 odpowiedzi 324 wizyt
pytanie zadane 1 listopada 2018 w PHP przez olejniczakbydgoszcz Początkujący (290 p.)
0 głosów
1 odpowiedź 162 wizyt
pytanie zadane 26 lipca 2018 w PHP przez Q7V Gaduła (4,250 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...