POST do 2 skryptów jednocześnie

Języki, których efekty są wykonywane po stronie serwera. PHP, ASP czy CGI w połączeniu z bazami danych SQL dają niezwykłe możliwości budowy i zarządzania stron WWW. Tu zadajemy pytania oraz demonstrujemy kod, z którym mamy problem.
Patol89
Nowy
Nowy
Posty: 34
Rejestracja: śr paź 24, 2007 10:28 am
Kontakt:

POST do 2 skryptów jednocześnie

Post autor: Patol89 »

Witam mam formularz kontaktowy i chciał bym by POST był przesłany do 2 skryptów jednocześnie jest taka możliwość?
Przykład:
<form method = 'POST' action="a.php">
by nie wysyłało tylko do a.php lecz też do b.php.
Czy to jest wykonalne?

Za pomoc dziękuję i pozdrawiam.
HaWaJ
Nowy
Nowy
Posty: 159
Rejestracja: pt kwie 06, 2007 5:12 pm

Re: POST do 2 skryptów jednocześnie

Post autor: HaWaJ »

Witam, POSTEM raczej tego nie zrobisz (prędzej $_GET - ale jest to bardzo ryzykowne pod względem ochrony danych) natomiast alternatywą mogą być sesje
Patol89
Nowy
Nowy
Posty: 34
Rejestracja: śr paź 24, 2007 10:28 am
Kontakt:

Re: POST do 2 skryptów jednocześnie

Post autor: Patol89 »

Skrypt ten służyć będzie do wyświetlania informacji więc bezpieczeństwo nie jest takie ważne więc czy mógłbym prosić o przykład jak powinien wyglądać taki skrypt z metodą $_GET który prześle dane do 2 skryptów?

Z góry dziękuję.
HaWaJ
Nowy
Nowy
Posty: 159
Rejestracja: pt kwie 06, 2007 5:12 pm

Re: POST do 2 skryptów jednocześnie

Post autor: HaWaJ »

Może opisz dokładniej troszkę ten problem, co i jak ma wyglądać, to znajdzie się wygodniejsze rozwiązanie :)
gorylek
Zaczyna działać
Zaczyna działać
Posty: 427
Rejestracja: śr gru 19, 2007 7:29 pm

Re: POST do 2 skryptów jednocześnie

Post autor: gorylek »

Dokładnie, poza tym co takiego ma skrypt z b.php czego nie ma a.php i czemu tego nie można zespolić ?
Patol89
Nowy
Nowy
Posty: 34
Rejestracja: śr paź 24, 2007 10:28 am
Kontakt:

Re: POST do 2 skryptów jednocześnie

Post autor: Patol89 »

Mam na stronie formularz i chciał bym by przesyłane informacje z niego przesyłały się do skryptu na dwóch stronach czyli do www.strona1.pl i www.strona2.pl i myślałem że da się to zrobić za pomocą POST ale jeśli nie tak to jak?
HaWaJ
Nowy
Nowy
Posty: 159
Rejestracja: pt kwie 06, 2007 5:12 pm

Re: POST do 2 skryptów jednocześnie

Post autor: HaWaJ »

Na inny adres nie przeniesiesz, możesz jedynie do plików znajdujących się na serwerze. Tutaj masz prosty przykład, który jednak nie jest zbyt "poprawny":

a.php:

[php]
<html>
<!-- Formularz -->
<form method = "POST" action="?wiadomosc=przeslij">
<textarea width="50" height="50" name="txt">Wpisz wiadomość</textarea>
<input type="submit" value="prześlij">
</form>
</html>

<?php

if($_GET['wiadomosc'] == 'przeslij'){ // sprzawdzenie czy
//zmienna $_GET ma przypisaną wartość
echo $_POST['txt']."<br/><br/>";
echo "<html><a href='b.php?wiadomosc=".$_POST['txt']."'>Przeslij wiadomosc
do pliku b.php</a></html>"; //Link, który prześle informacje z pliku A do pliku B

}

?>
[/php]


b.php:

[php]
<?php

if(isset($_GET['wiadomosc'])){
echo "Wiadomość przesłana z pliku a.php do pliku b.php: <br /> <br />";
echo $_GET['wiadomosc'];
}


?>
[/php]

Dużo lepszym rozwiązaniem są sesje lub pliki tekstowe.
Patol89
Nowy
Nowy
Posty: 34
Rejestracja: śr paź 24, 2007 10:28 am
Kontakt:

Re: POST do 2 skryptów jednocześnie

Post autor: Patol89 »

Potrzebował bym by to było bardziej zautomatyzowane czyli za pomocą jednego kliknięcia "wyślij" dane z formularza zostały by przesłane do 2 skryptów może dało by rade zrobić to w ten sposób by na 1 stronie zostały zapisane dane do pliku txt a do 2 strony zostały by przesłane? Wtedy mógłbym na 1 stronie spokojnie wczytać te dane z tym już by nie było problemu.

Dziękuję za pomoc.
HaWaJ
Nowy
Nowy
Posty: 159
Rejestracja: pt kwie 06, 2007 5:12 pm

Re: POST do 2 skryptów jednocześnie

Post autor: HaWaJ »

No to może takie rozwiązanie będzie w porządku:

plik zapisz.php:

[php]<html>
<!-- Formularz -->
<form method = "POST" action="?wiadomosc=przeslij">
<textarea width="50" height="50" name="txt">Wpisz wiadomość</textarea>
<input type="submit" value="prześlij">
</form>
</html>

<?php

if($_GET['wiadomosc'] == 'przeslij'){ // sprzawdzenie czy
//zmienna $_GET ma przypisaną wartość
define("FILE_NAME","plik.txt");
$plik = @fopen(FILE_NAME,"a");

fwrite($plik,$_POST['txt']);
print "Dane zapisane poprawnie...";

fclose($plik);
}

[/php]

plik a.php i b.php (pliki w których będą widniały informacje - są takiej samej "konstrukcji"):


[php]
<?php
define("FILE_NAME","plik.txt");

$plik = @fopen(FILE_NAME,"r");

while($row = @fgets($plik,1024)){

echo $row;

}

?>
[/php]

Jak będziesz wrzucał pliki na serwer to pamiętaj o nadaniu plikowi "plik.txt" uprawnień do odczytu i zapisu (chmod 0666).
Ostatnio zmieniony śr cze 11, 2008 10:01 pm przez HaWaJ, łącznie zmieniany 1 raz.
ODPOWIEDZ