[PHP] Jak doprowadzić zmienną POST przez 2 strony

0

1.Wchodzę na stronę index.php, wpisuję słowo X do formularza i klikam OK.
2.Przekierowuje mnie na stronę send.php i wysyła słowo X np. na maila.
3.Następnie przekierowuje mnie na skrypt na innym serwerze do którego nie mam dostępu i chcę żeby ten skrypt od razu mógł ją przetworzyć.

Jak to wykonać?

0

Wymyśliłem dwa rozwiązania:

  1. na 2 stronie kolejny formularz, z polami typu hidden, automatycznie wysyłany przez JS po załadowaniu strony

  2. wykorzystanie curl'a

0

Cookie albo przesłać ją przez GET. Ewnetualnie jeżeli koniecznie musi być POST, to zapoznaj się z bibliotekami CURL lub możesz też wykorzystać pear HTTP/Request

0

Nadal nie działa.
Mam 3 pliki:
index.php
second.php
end.php

Plik index.php zawiera formularz z id= TEXT
Plik second.php

<?php

$curl = curl_init('end.php');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, "text=".$_POST['text']."");

$dane = curl_exec($curl);
header('Location: http://ble/end.php');

?>

Plik end.php zawiera

<?php
echo $_POST['text'];
?>

Gdzie się podział błąd?

0

Bo masz źle kod napisany. Serwer zmeinne POST GET pamięta tylko podczas wywołania. A ty najpierw pobierasz stronę, a później przechodzisz do niej bez post i get
Wyświetl zmienną $dane to w niej będziesz miał prawidłowe wywołanie.

0

Możesz wytłumaczyć? Mam tą zmienną $dane wyświetlić w pliku drugim czy trzecim?

0

W tym second.php i w niej masz cały kod z end.php

0

Teraz:

Plik index.php zawiera formularz z id= TEXT
Plik second.php

<?php

$curl = curl_init('end.php');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, "text=".$_POST['text']."");

$dane = curl_exec($curl);
echo $dane;


?>

Plik end.php zawiera

<?php
echo $_POST['text'];
?>

Tak ma być?
Zrobiłem ale nie widać zawartości end.php

0

a przypadkiem przy polu formularza o id=text nie powinieneś mieć jeszcze atrybutu name="text" ???

0

Teraz tak:

<form action="send.php" method="post">
<input type="text" name="text" size="30" maxlength="40"></p>


<input type="submit" value="Wyślij">

</form>

Niestety nadal nie działa. Mam nadzieję że znajdziesz jakiś pomysł.

0

i jeszcze akcja powinna być na second.php action='second.php'

0

Sorki, u mnie inaczej się nazywają.
Trzeba nadal kombinować ;/

0

Jesli tych danych nie ma za duzo to sadze, ze mozesz je tez przechowac w sesji. Mozna rowniez je zapisac w mysql(identywikatorem do tych danych moze byc np md5(IP goscia)) ... metod jest kupa.
Posty, gety... kiepski pomysl.
Pozdrawiam

0

imho dużo lepiej by było, jakby Ghoost napisał co chce zrobić, a nie jak. Tak można tylko gdybać i wróżyć z fusów...

poza tym myślę, że już problem rozwiązał...

1 użytkowników online, w tym zalogowanych: 0, gości: 1