Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Formularz, wysyłanie z równoczesnym przekierowaniem, jak?
Forum PHP.pl > Forum > Przedszkole
Alutka
Mam formularz, który pięknie się wysyła na maila, dzięki temu:

  1. <?php
  2. if (count($_POST))
  3. {
  4. ////////// USTAWIENIA //////////
  5. $email = 'adres e-mail gdzie wysłać formularz'; // Adres e-mail adresata
  6. $subject = 'temat'; // Temat listu
  7. $message = 'Dziękujemy za wysłanie formularza'; // Komunikat
  8. $error = 'Wystąpił błąd podczas wysyłania formularza'; // Komunikat błędu
  9. $charset = 'iso-8859-2'; // Strona kodowa
  10. //////////////////////////////
  11.  
  12. $head =
  13. "MIME-Version: 1.0r\n" .
  14. "Content-Type: text/plain; charset=$charsetr\n" .
  15. "Content-Transfer-Encoding: 8bit";
  16. $body = '';
  17. foreach ($_POST as $name => $value)
  18. {
  19. if (is_array($value))
  20. {
  21. for ($i = 0; $i < count($value); $i++)
  22. {
  23. $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value[$i]) : $value[$i]) . "r\n";
  24. }
  25. }
  26. else $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "r\n";
  27. }
  28. echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;
  29. }
  30. else
  31. {
  32. ?>
  33. <form action="?" method="post">
  34.  
  35. Tutaj umieść wszystkie pola formularza
  36.  
  37. </form>
  38. <?php
  39. }
  40. ?>


Na końcu mam guziczek, "Wyślij" który sprawia, że formularz się wysyła, naaatomiast-i tu mój ogromny problem- nie wiem jak zrobić i które mróweczki, gdzie wpisać, żeby po naciśnieciu tego buttona wysłało się i równocześnie przeszło na podstronę. Zamiast tych słów "Dziękujemy za wysłanie formularza", żeby pojawiła się podstronka.
Proszę bardzo o podpowiedź!
Foxx
Linię:
  1. <?php
  2. echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;
  3. ?>

zmień na:
  1. <?php
  2. mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head);
  3. header("Location: innastrona.php");
  4. ?>
Fishu
  1. <?php
  2. if (count($_POST))
  3. {
  4. ////////// USTAWIENIA //////////
  5. $email = 'adres e-mail gdzie wysłać formularz'; // Adres e-mail adresata
  6. $subject = 'temat'; // Temat listu
  7. $message = 'Dziękujemy za wysłanie formularza'; // Komunikat
  8. $error = 'Wystąpił błąd podczas wysyłania formularza'; // Komunikat błędu
  9. $charset = 'iso-8859-2'; // Strona kodowa
  10. $podstrona = 'plik.php'; // Podstrona na którą ma przekierować po wysłaniu formularza
  11. //////////////////////////////
  12.  
  13. $head =
  14. "MIME-Version: 1.0r\n" .
  15. "Content-Type: text/plain; charset=$charsetr\n" .
  16. "Content-Transfer-Encoding: 8bit";
  17. $body = '';
  18. foreach ($_POST as $name => $value)
  19. {
  20. if (is_array($value))
  21. {
  22. for ($i = 0; $i < count($value); $i++)
  23. {
  24. $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value[$i]) : $value[$i]) . "r\n";
  25. }
  26. }
  27. else $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "r\n";
  28. }
  29. mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;
  30. header("Location: " . $podstrona);
  31. }
  32. else
  33. {
  34. ?>
  35. <form action="?" method="post">
  36.  
  37. Tutaj umieść wszystkie pola formularza
  38.  
  39. </form>
  40. <?php
  41. }
  42. ?>
Alutka
Dzięki za pomoc! smile.gif
lukasus87
Witam wstawiłem sobie taki formularz, ale za każdym razem występuje błąd po wysłaniu, mógłby mi ktoś powiedzieć co jest nie tak, strona z rozszerzeniem .php
Podejrzewam że tutaj mam coś nie tak
<input type="text" name="text[]" />
nie wiem co wpisać w to name=""
Z góry dziękuję za pomoc
<?php
if (count($_POST))
{
////////// USTAWIENIA //////////
$email = 'lukasus87@gmail.com'; // Adres e-mail adresata
$subject = 'pytanie do myslovitz'; // Temat listu
$message = 'Dziękujemy za wysłanie formularza'; // Komunikat
$error = 'Wystąpił błąd podczas wysyłania formularza'; // Komunikat błędu
$charset = 'iso-8859-2'; // Strona kodowa
//////////////////////////////

$head =
"MIME-Version: 1.0\r\n" .
"Content-Type: text/plain; charset=$charset\r\n" .
"Content-Transfer-Encoding: 8bit";
$body = '';
foreach ($_POST as $name => $value)
{
if (is_array($value))
{
for ($i = 0; $i < count($value); $i++)
{
$body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value[$i]) : $value[$i]) . "\r\n";
}
}
else $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "\r\n";
}
echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;
}
else
{
?>
<form action="?" method="post">
<input type="text" name="text[]" /><br>
<input type="submit" value="Wyślij pytanie" />
</form>
<?php
}
?>
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.