Skocz do zawartości
lopik_

[php] Formularz Na Stronie Www Do Wysylania Wiadomosci

Rekomendowane odpowiedzi

Nie znam sie na PHP a potrzebuję zrobić formulaz na stronie do wysyłania wiadomości do mnie.

Mam strone w html'u i potrzebuje taki formulaz do tej strony wstawić. (mam serwer z obsługą php)

To znaczy ja juz sobie formularz zrobiłe i wszystko mam juz ładnie na stronie, teraz tylko potrzebuje odpowiedni kod PHP zeby ten formulaz dzialał (wysyłał po kliknieciu buttona "wyslij" ;) )

 

To juz mam/zrobiłem:

 

Imię: (imię/nazwa nadawcy)

Adres: (adres email nadawcy)

Tresc: (tresc wiadomości)

Wyslij (button wyslij, po kliknieciu wysyła wiadomosc)

 

I zeby po wysłaniu wiadomośći wyskoczyło info pod formularzem ustawione przezemnie np. Wiadomosc zostala wysłana, Dziękuję itp. itd.

I jak by bylo mozlize zeby nie przeładowywał ten skrypt strony po wysłaniu - podobno da sie tak.

 

A oto mój kod html formularz który sobie zrobiłem:

*contact.html - to strona na której mam ten formularz

<form action="contact.html" method="post">
<table><tr>
<td valign="top" class="table_right">imię:</td>
<td><input name="imie" type="text" class="intput" style="width:240px;"/></td>
</tr><tr>
<td valign="top" class="table_right"> e-mail:</td>
<td><input name="adres" type="text" class="intput" style="width:240px;"/></td>
</tr><tr>
<td valign="top" class="table_right">wiadomo¶ć:</td>
<td><textarea name="tresc" cols="12" rows="5" class="textarea"></textarea></td>
</tr><tr>
<td class="table_right"> </td>
<td><input name="submit" type="submit" class="button" value="wy¶lij" /></td>
</tr></table>
</form>

 

Z Góry Bardzo Dziękuję !!

Pozdrawiam. !!

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

O ile serwer obsługuje funkcję mail():

http://pl2.php.net/manual/en/ref.mail.php

 

Dodajesz sobie gdzieś, np poniżej formularza:

<?if (isset($_POST['submit'])) {mail('moj.adres@email.com', 'Moja strona - kontakt' , $tresc, 'From: ' . $imie.' <'.$adres.'>');echo('Email został wysłany!');}?>

// BTW:


nie działa :(

Edytowane przez Sid

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Sorry ale mozesz napisac dokladnie... nie znam sie na php wiec nie iwme.

 

Mam ten kod dodac do pliku html ? i bedzie to działać ?

 

EDIT:

 

A więc zmieniłem html'a na php i teraz działa tak jak chciałem :)

 

Ale jeszcze chciał bym zmienić kolor i wielkość czcionki tej "Email został wysłany" to jest po wyslanieu wiadomosci.

Jak to mozna sformatowac ?

Edytowane przez Rocky998

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Hm normalnie, jak masz:

echo('Email został wysłany!');
To formatujesz tam i np. dajesz:

echo('<span style="font-family:Verdana; color: #00ff00; font-size:14px">Email został wysłany!</span>');

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

<form action="contact.php" method="post">

 

robisz oprócz pliku z formularzem (może być w htmlu), plik contact.php, tam wklejasz to co dał Ci Sid.

 

Wtedy klikniecie wyślij w formularzu wywoła plik contact.php, który jeśli masz obsługę php na serverze wykona ten plik i wyśle mejla...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dzięki. Zrobilem z html .php i teraz juz dziala wszystko jesli chodzi o dzialanie.

 

Ale co do tego formatowanie to wpisalem tak jak "Sid" napisał i nie dziala :?

Mam tak:

 

echo('Wiadomość wysłana. Dziękuję !!');

I chce to sformatować takim stylem:

.form {margin-left:4em;font-size:10px;color:#BC2E2E;font-weight:bold;}

Więc da sie jakos tą klase dodać ?

 

Pyt. 2

 

Formularz dziala i wszystko ok, ale chcial bym zeby bylo w nim takie cos ze jak ktos nie wypelni pola "Imie" i "email" to zeby nie wyslal wiadomosci i jak ktos napisze np. mniej niz 10 znaków w "tresc" to tez zeby nie wyslal.

Zeby takie info wyskakiwalo w tym samym miejscu co wyskakuje po wysłaniu wiadomosci, ze popelniono taki czy taki błąd.

Wiem ze sie tak da bo tak widzialem.

 

No i czy mozecie mi napisac cos takiego ?

No chyba ze to juz jest bardzo skomplikowane, to rozumiem.

 

Z Góry Wielkie Dzięki.

Pozdrawiam.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

sprawdzenie 2 zmiennych do skomplikowanych raczej nie należy :)

 

jesli chodzi o dodanie stylu.. to musisz dodac klasyczny nagłówek html do pliku generowanego przez PHP... i w tym nagłówku wrzucić styl...

 

plik powinien w efekcie przetwarzania przez server PHP dać taką strukturę...

 

<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">
<html>
<head>
<title> </title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1250\">
<link rel=\"stylesheet\" href=\"style1.css\"  type=\"text/css\">
</head>
<body>

tu zawartość strony + formy

</body>
</html>

oczywiście trochę może się różnić w zależności od potrzeb.. ale pamiętaj że skrypt PHP musi wygenerować POPRAWNĄ stronę html...

 

Co do validacji nadawcy... to na początku skryptu który wywołujesz , który wysyła mejla musisz sprawdzić czy zmienne są ustawione...

if(isset($_POST['imie']) && isset($_POST['email']) )
{
	$IP=$_SERVER['REMOTE_ADDR'];	
	$imie=$_POST['imie'];
	$data=date('d.m.Y  H:i:s');
	$email=$_POST['email'];
	$tresc=$_POST['tresc'];
}
else echo "Nie wypełeniłeś wszystkich wymaganych pól!<br>";

Tu masz kawałek mojej stronki do wysyłania komentarzy... Jesli nie wypełni się pól imie i email to zostanei wyświetlony napis Nie wypełeniłeś wszystkich wymaganych pól!

Do sprawdzenia długości musisz poszukać w manulau do PHP funkcji sprawdzajacej długość... bedzie coś w stylu lenght()...

 

Zakałdajac ze to ta funkcja to kod może wyglądać tak..

if(lenght($tresc)>10) wyslij_majla;
else echo 'Wiadomość zbyt krótka';

 

i treści echowanych nie musisz umieszczać w nawiasie... piszesz echo 'blablabla';

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...