Strona 1 z 1

POST do 2 skryptów jednocześnie

: pn cze 09, 2008 1:15 pm
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.

Re: POST do 2 skryptów jednocześnie

: pn cze 09, 2008 3:31 pm
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

Re: POST do 2 skryptów jednocześnie

: pn cze 09, 2008 4:25 pm
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ę.

Re: POST do 2 skryptów jednocześnie

: pn cze 09, 2008 4:43 pm
autor: HaWaJ
Może opisz dokładniej troszkę ten problem, co i jak ma wyglądać, to znajdzie się wygodniejsze rozwiązanie :)

Re: POST do 2 skryptów jednocześnie

: pn cze 09, 2008 5:32 pm
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ć ?

Re: POST do 2 skryptów jednocześnie

: pn cze 09, 2008 9:48 pm
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?

Re: POST do 2 skryptów jednocześnie

: wt cze 10, 2008 11:25 am
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.

Re: POST do 2 skryptów jednocześnie

: wt cze 10, 2008 9:59 pm
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.

Re: POST do 2 skryptów jednocześnie

: śr cze 11, 2008 12:40 pm
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).