Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Edycja formularza email
Forum PHP.pl > Forum > Przedszkole
jakubG97
Witam. Mam problem ze stworzeniem formularza kontaktowego na stronę. Formularz ten wysyła maila do mnie kiedy użytkownik wypełni formularz i kliknie wyślij.

Nie wiem dlaczego ale wszystko działa, oprócz tego że mail nie jest wysyłany.

Moje kody:

Kontakt.html
CODE

<h1>Kontakt</h1>
<center>
<table class="formularz" border="0"><form action="kontakt.php" name="zapytanie" method="post" style="margin=20px">
<tr>
<td>Tresc wiadomosci</td>
<td><textarea name="tresc" style="width: 250px; height: 100px"></textarea></td>
</tr>
<tr>
<td>Nick z minecraft</td>
<td><input type="text" name="imie" style="width: 250px"></td>
</tr>
<tr>
<td>Adres e-mail</td>
<td><input type="text" name="email" style="width: 250px"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="submit" value="Wyślij">&nbsp;
<input type="reset" value="Resetuj"></td></form>
</tr>
</table>
</center>

</div>




Kontakt.php
CODE
<html>
<head>
<meta http-equiv=refresh content="3; URL=http://www.craftandplay.pl/nowe/kontakt.html">
</head>
<body>
<?php if(isset($_POST['send']))
{$to = 'jakubgrzaslewicz@gmail.com';
$subject = 'Wiadomość z Craft & Play';
$imie = $_POST['imie'];
$email = $_POST['email'];
$wiadomosc = $_POST['tresc'];
$headers = "Od: $email" . "\r\n" .
"Reply-To: $email" . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, "Nowa wiadomość od: $imie \n\n\n $wiadomosc", $headers);
}
echo "<b><strong>Dziękujemy za wysłanie wiadomości, za 3 sekundy zostaniesz przekierowany do poprzedniej strony ;D</strong></b>";
?>
</body>
</html>




Problem jest tutaj: TUTAJ
Turson
Sprawdź konfigurację serwera czy pozwala na wysyłanie maili
jakubG97
Tak serwer na to pozwala bo zainstalowałem gotowy skrypt z sieci i działa. Ale ja chce żeby ten skrypt działał
Turson
  1. <input type="submit" name="submit" value="Wyślij">

  1. if(isset($_POST['send'])

Niezgodność cool.gif
jakubG97
To:
  1. if(isset($_POST['send'])

Zamienić na to:
  1. if(isset($_POST['submit'])
?

Dobra dzięki.
Zamieniłem to i działa.
I mam jeszcze jedno pytanie czy da się tak zrobić żeby napis: "Wysłano wiadomość" pokazywał się nie na nowej stronie tylko nad tym formularzem?
Turson
Oczywiście, że się da.

W formularzu form action musi być taki adres jaki strony na której operujesz. I w php (poglądowo):
  1. <?PHP
  2. if(isset($_POST['submit'])
  3. {
  4. //wysyłanie wiadomosci
  5. }
  6. else
  7. {
  8. //formularz kontaktowy
  9. }
  10. ?>
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.