Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Skrypt wysyłania Email ze strony.
Forum PHP.pl > Forum > Przedszkole
Mercu
Witam praktycznie wszystko działa lecz są dwie rzeczy które chciał bym by inaczej działały, a więc poniżesz przedstawiam wam skrypt oryginalny a jeszcze niżej będzie mój bo próbowałem przerobić.

Orginal:

To jest kod który jest używany w HTML:
  1. <form action="skrypt.php" method="post">
  2. <input type="text" name="email" /><br />
  3. <textarea name="content" cols="30" rows="6"></textarea>
  4. <input type="submit" value="wyślij" />
  5. </form>


A to jest plik PHP skryptu.

  1. <?PHP
  2. $adresat = 'adres@serwer.pl'; // Tutaj jest mój adres wiadomo
  3. @$email = $_POST['email'];
  4. @$content = $_POST['content'];
  5. $header = "From: ktos@serwer.pl \nContent-Type:".
  6. ' text/plain;charset="iso-8859-2"'.
  7. "\nContent-Transfer-Encoding: 8bit";
  8. if (mail($adresat, 'List ze strony', $content, $header))
  9. echo '<p>działa</p>';
  10. else
  11. echo '<p><b>NIE</b> wysłano maila!</p>';
  12. ?>


I chodzi mi o to: Bo aktualnie mam okienko wpisz Email w forumularzu, gdy wypełniam i tak przychodzi mi pod innym czyli "Ktos@serwer.pl" Chciał bym aby przychodzący do mnie email nosił taką samą nazwe jaką ktoś poda w formularzu przykładowo php@php.pl to ma taki przyjść. Kolejną sprawą jest aby dodać linijke jeszcze z tematem oraz by gdy ktoś wpisze w formularzu nazwe tematu taka nazwa ma przyjść. I rzeczą ostatnią jest by te "Działą". "Nie wysłano" Otwierało jako komunikat na stronie, a nie przenosiło do nowej strony.




TEraz mój kod. Chciałem zrobić to co wyżej opisałem ale tylko wyszło mi z wyświetlaniem tematu. Proszę was o pomoc.

W HTML:
  1. <form action="skrypt.php" method="post">
  2. Wspisz swój email.<br/><input type="text" name="email" /><br /><br/>
  3. Wspisz Temat wiadomości.<br/><input type="text" name="temat" /><br /><br/>
  4. Treść jaką chcesz wysłać.<br/><textarea name="content" cols="30" rows="6"></textarea>
  5. <input type="submit" value="wyslij" />
  6. </form>


i php
  1. <?PHP
  2. $adresat = "pstryk@amorki.pl"; // pod ten adres zostanie wysłana wiadomosc, jest to adres przykładowy
  3. @$email = $_POST['email'];
  4. @$temat = $_POST['temat'];
  5. @$content = $_POST['content'];
  6.  
  7. if (mail($email, $temat, $content))
  8. echo "działa";
  9. else
  10. echo "nie wysłano";
  11.  
  12. ?>


Zapewne namieszałem wiem, ale dopiero zaczynam przygode z programowaniem.
Turson
Cytat
Bo aktualnie mam okienko wpisz Email w forumularzu, gdy wypełniam i tak przychodzi mi pod innym czyli "Ktos@serwer.pl" Chciał bym aby przychodzący do mnie email nosił taką samą nazwe jaką ktoś poda w formularzu przykładowo php@php.pl to ma taki przyjść.

Jest jak wół tutaj:
  1. $header = "From: ktos@serwer.pl \nContent-Type:".
  2. ' text/plain;charset="iso-8859-2"'.
  3. "\nContent-Transfer-Encoding: 8bit";
Mercu
@up Nie zrozumiałeś. Chodzi o to że gdy ktoś wypełnia mi w formularzu email czyli przykłądowo wpisuje PHP@PHP.pl. I na skrzynke ci przychodzi email. I zamiast pisać OD: PHP@PHP.PL to przychodzi mi od ktos@serwer.pl, a chce by to działało normalnie.
Turson
W miejsce "ktos@serwer.pl" wstaw zmienną z formularza
Mercu
Faktycznie działa, banalne. Jeszcze jedna banalna sprawa jak zrobić by te działa, nie działa otwierało sie jako komunikat a nie przenosiło do innej strony?
Turson
  1. if(isset($_POST["wyslano"]))
  2. {
  3. $adresat = "pstryk@amorki.pl"; // pod ten adres zostanie wysłana wiadomosc, jest to adres przykładowy
  4. @$email = $_POST['email'];
  5. @$temat = $_POST['temat'];
  6. @$content = $_POST['content'];
  7.  
  8. if (mail($email, $temat, $content))
  9. {
  10. echo "działa";
  11. }
  12. else
  13. {
  14. echo "nie wysłano";
  15. }
  16. }
  17. else
  18. {
  19. echo ' <form action="skrypt.php" method="post">
  20. <input type="text" name="email" /><br />
  21. <textarea name="content" cols="30" rows="6"></textarea>
  22. <input type="submit" value="wyślij" name="wyslano"/>
  23. </form>';
  24. }
Mercu
Dobra zapomniałem jeszcze o ostantniej rzeczy to tylko to aby nie wysłał emiala bez wypełnienia jakiego kolwiek pola. Chodzi o to, że aby wysłać wiadomość muszą być wypełnione wszystkie pola! Z góry dzięki.
Turson
  1. if(!empty($pole1) && !empty($pole2) && !empty($pole3))
  2. {
  3. //ok
  4. }
  5. else
  6. {
  7. echo "Wypełnij wszyskie pola";
  8. }
Mercu
Dziękuje bardzo smile.gif Można zarchiwizować smile.gif

A nie dobra jeszcze jedna rzecz. Bo się pogubiłem pytanko takie. Mogę zmienić kolor obramowania ramek (ramek samych) czy co kolwiek bo jak widać na białym tle to lipnie wygląda. (Poniżej SS) Wydaje mi się że to już ustawiam w HTML.



Przepraszam za zawracanie tyłka ale jeszcze tępy w tych sprawach jestem smile.gif
Turson
dodajesz class lub style="border:1px solid black" np.
Mercu
No działa super dzięki biggrin.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.