Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] w jaki sposob przekierowac uzytkownika na inna podstrone?
blokern
post 2.02.2021, 21:30:10
Post #1





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: 27.02.2008

Ostrzeżenie: (0%)
-----


Hej po przeslaniu formularza chcialem odswiezyc strone za pomoca
  1. header('Location: '.$domain.'login.php?id='.$_POST['id'].'');

ale jak sie okazuje funkcja nie dziala. pewnie uslugodawca ją wyłączył
jak moge w inny sposob odswiezyc strone po wyslaniu formularza metoda post?
dzieki

zrobilem tak

  1. echo '<script> location.href = "'.$domain.'login.php?id='.$_POST['id'].'"; </script>';


ale to chyba mocna bieda?

Ten post edytował blokern 2.02.2021, 21:24:48


--------------------
www.Opiekuj.pl
Go to the top of the page
+Quote Post
trueblue
post 2.02.2021, 21:32:47
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


A po funkcji header dodałeś exit?


--------------------
Go to the top of the page
+Quote Post
dublinka
post 2.02.2021, 22:06:05
Post #3





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

Ostrzeżenie: (0%)
-----


Co nie dziala? Rozumiem ze to id jest z jakiegos pola. Wywal to i sprawdz to z sama zmienna systemowa

  1. header("location: " . $_SERVER["SCRIPT_NAME"] . "?id=" . $_POST["id"]);






--------------------
Go to the top of the page
+Quote Post
blokern
post 3.02.2021, 00:11:13
Post #4





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: 27.02.2008

Ostrzeżenie: (0%)
-----


funkcja header nie dziala


--------------------
www.Opiekuj.pl
Go to the top of the page
+Quote Post
dublinka
post 3.02.2021, 01:08:19
Post #5





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

Ostrzeżenie: (0%)
-----


Cytat(blokern @ 2.02.2021, 23:11:13 ) *
funkcja header nie dziala

Ale co nie dziala. Pierwsze sie spotykam z tym zeby header nie dzialal.
Daj tu kawalek kodu

Ten post edytował dublinka 3.02.2021, 01:09:41


--------------------
Go to the top of the page
+Quote Post
Smoker
post 3.02.2021, 21:32:35
Post #6





Grupa: Zarejestrowani
Postów: 101
Pomógł: 5
Dołączył: 15.10.2008
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


header działa na pewno, cos musiałeś zrobić źle. Gdybyś napisał co nie działa tzn jaki dokładnie dostajesz błąd byłoby łatwiej ale spróbuję:

1. słowo "Location" piszemy z dużej litery, nie jestem pewien czy to jest problemem, ale warto spróbować

2. po wysłaniu nowego headera poleceniem header() skrypt nie przestaje wykonywać kodu w pliku, a zapewne chcesz aby tak się zadziało -> przekierowanie i nie wyświetlamy dalej tego co poprzednia strona oferowała, aby to zrobić trzeba skorzystać z metody exit() lub die() w kolejnej linijce zaraz po header()

  1. header('Location: http:// www.example.com/');
  2. exit;


3. wysłanie headera nie zadziała jeżeli ten został już wysłany wcześniej, oznacza to w skrócie tyle, że nie możesz go użyć jeżeli wcześniej wysłałeś już jakikolwiek kod html do przeglądarki. Oczywiście da się to tak czy siak zrobić, np zbierając kod do buffora i wyjmując gdzieś na końcu skryptu. Warto jednak zadbać by logika wywołująca header() działa się przed wyświetlaniem kodu html

Ten post edytował Smoker 3.02.2021, 21:35:21


--------------------
http://streetonline.pl/?gback=1 - Kliknij i daj się podwieźć
Go to the top of the page
+Quote Post
LowiczakPL
post 4.02.2021, 09:58:36
Post #7





Grupa: Zarejestrowani
Postów: 531
Pomógł: 55
Dołączył: 3.01.2016
Skąd: Łowicz

Ostrzeżenie: (0%)
-----


można zrobić w poniższy sposób, dodając do twojego form onsubmit

Kod
<form onsubmit="setTimeout(function(){window.location.reload();},10);">


--------------------
Szukam zleceń Symfony, Laravel, Back-End, Front-End, PHP, MySQL ...
Go to the top of the page
+Quote Post
Tomplus
post 4.02.2021, 10:26:30
Post #8





Grupa: Zarejestrowani
Postów: 1 836
Pomógł: 226
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


z jakiego hostingu korzystasz?
Go to the top of the page
+Quote Post
dublinka
post 4.02.2021, 10:31:40
Post #9





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

Ostrzeżenie: (0%)
-----


Cytat(Smoker @ 3.02.2021, 20:32:35 ) *
header działa na pewno, cos musiałeś zrobić źle. Gdybyś napisał co nie działa tzn jaki dokładnie dostajesz błąd byłoby łatwiej ale spróbuję:

1. słowo "Location" piszemy z dużej litery, nie jestem pewien czy to jest problemem, ale warto spróbować

Nie ma znaczenia.

Cytat(Smoker @ 3.02.2021, 20:32:35 ) *
2. po wysłaniu nowego headera poleceniem header() skrypt nie przestaje wykonywać kodu w pliku

Nastepuje przekierowanie. Exit daje tylko pewnosc ze bedzie STOP bo tego my chcemy,

  1. <?php
  2.  
  3. header("location: index2.php");
  4.  
  5.  
  6. echo "bleeeeeeeee";
  7. ?>


to to samo co

  1. <?php
  2.  
  3.  
  4. header("location: index2.php");
  5.  
  6. echo "bleeeeeeeee";
  7. ?>

Dla pewnosci stosowac exit ale mozna i bez.
mozna tez i tak:

  1. exit(header("location: index2.php"));


Ten post edytował dublinka 4.02.2021, 10:36:31


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2024 - 12:11