Strona 1 z 1

Wysylanie na mail!

PostNapisane: 3 września 2006, o 08:29
przez GrzeHoO
Witam, chcialem spytac jak w PHP zrobic wysylanie zawartosci inputow na maila:

3 inputy

1 text
2 text
3 wyslij

i zawartosc 2 pól textowych zeby znalazly sie na moim mailu, jak to zrobic:( ??
bardoz tego potrzebuje

Wysylanie na mail!

PostNapisane: 3 września 2006, o 10:22
przez bombaj
najpierw mozna napisac:

$text1 = $_POST['pole_tekstowe_1'];
$text2 = $_POST['pole_tekstowe_2'];

a pozniej:

mail ('[email protected]', 'temat_listu', 'pole tekstowe 1: ' . $text1 . "\n" . 'pole tekstowe 2: ' . $tekst2);

uwagi:
1. jezeli formularz przesyla dane metoda get to zamiast $_POST... trzeba napisac $_GET...
2. argumenty tablicy $_POST sa to nazwy inputow w formularzu... czyli moga sie inaczej nazywac niz pole_tekstowe_1 czy 2.... popatrz jaka wartosc ma paramert name w inputach
3. nie musisz korzystac z tego przypisania $text1 i $text2 i odrazu wstawic do funkcji mail, ale zagmatwa to troche kod
4. funkcja mail zadziala, jezeli serwer www ma ustawiony adres pocztowy przez ktory moze przesylac maile - ustawia sie to chyba w apache lub php (nie pamietam), ale jesli korzystasz z innych serwerow niz ten na swoim kompie to zapewne wszytsko jest ustawione
5. jezeli nie masz ustawionego u siebie serwera pocztowego, to wystapi blad i przerwie dzialanie skryptu, mozesz sie zabezpieczyc stawiajac znak @ przed funkcja mial: @mail(.....)... - jednak wtedy niezostanie wyslany mail, no ale skrypt wykona sie w calosci

Wysylanie na mail!

PostNapisane: 3 września 2006, o 11:10
przez GrzeHoO

Wysylanie na mail!

PostNapisane: 3 września 2006, o 12:02
przez bombaj
powiedzmy ze masz formularz (to jest tylko szkielet - reszte uzupelnij sam):

<form action="inny.php" method="post" ....>
<input type="text" name="pole1" ....>
<input type="text" name="pole2" .....>
<input type="submit" ....>
</form>

natomiast obsluga danym bedzie w inny.php:

<?php
$text1 = $_POST['pole1'];
$text2 = $_POST['pole2'];

@mail ('[email protected]', 'temat_listu', 'pole tekstowe 1: ' . $text1 . "\n" . 'pole tekstowe 2: ' . $tekst2);
?>

a tu dalsza czesc kodu... np wyswietlajaca, ze wyslano dane czy cos innego

przy czym, jak juz wposmnialem, jesli dasz @ przed mail to bedzie dalej wykonywany skrypt, nawet jesli byl blad podczas wysylania mailu...

Wysylanie na mail!

PostNapisane: 3 września 2006, o 13:50
przez GrzeHoO
www.team.refresh.pl/log/ tutaj jest to co zrobilem

tak wyglada index.html:

<form action="wyslij.php" method="post" >
<input type="text" name="pole1" value="test1">
<input type="text" name="pole2" value="test2">
<input type="submit" >
</form>

tak wyglada wyslij.php:

<?php
$text1 = $_POST['pole1'];
$text2 = $_POST['pole2'];

@mail ('[email protected]', 'test', 'pole tekstowe 1: ' . $text1 . "\n" . 'pole tekstowe 2: ' . $tekst2);
?>

Twoje zgloszenie zostalo wyslane!

maile nie dochodzą :(

Wysylanie na mail!

PostNapisane: 3 września 2006, o 15:22
przez bombaj
skasuj @ przed mail, to pewnie dostaniesz blad polaczenia z poczta...

korzystasz z serwera na wlasnym kompie, czy np webpark.pl ??
jesli na wlasnym kompie to musisz ustawic serwer stmp w php.ini (nigdy tego nie robilem wiec moge sie mylic). tak wyglada sekcja dotyczaca poczty:

[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25

; For Win32 only.
;sendmail_from = [email protected]

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path = "C:\server\xampp\sendmail\sendmail.exe -t"

; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =

teraz musisz pozmieniac:
STMP = poczta.o2.pl (lub inny)

oraz

; For Win32 only.
sendmail_from = [email protected] (zwroc uwage ze nie ma ; na poczatku linijki - sprawa 2 - tu musi byc wpisany mail, ktory jest ja serwerze smtp wymienionym wyzej

jak wspomnialem sam sie tu nigdy nie bawilem... kiedys mialem serwer krasnal i tam byla oddzielna do tego opcja, a teraz mam xampp'a i tu nigdy nie zmienialem tyh linijek