Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Problem z PHP (formularz)
Forum PHP.pl > Forum > Przedszkole
katowicecentrum
Witam, mam taki kod php

  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. ?>

Ma on za zadanie wysłać formularz z serwera na pocztę. Lecz coś mi się tu nie podoba :-]
Otóż gdy się już przyciska "OK" i wysyła ten formularz, to pojawia się komunikat , który zmienia stronę na białą i zostawia zdanie w górnym lewym rogu. Zdanie to informuje o zakończonej operacji.

Skrypt został już zastosowany pod tym adresem>>> LINK<<<

Chciałbym, aby po naciśnięciu opcji "OK" pojawiał się tylko komunikat w małym okienku. Przy tym mógłby się jeszcze wymazywać wcześniej wypełniony formularz.


Dziękuje za pomoc

Dodam jeszcze, że jeśli chodzi o php to jestem zielony, więc prostymi słowami proszę...
nospor
Cytat
więc prostymi słowami proszę...

A wiec:
1) Umieszczaj tematy we wlasciwych dzialach - przenosze na przedszkole
2) uzywaj wlasciwego bbcode. W typ przypadki [php] a nie [code] - Popraw poprzedni post

3) Komunikat ci sie tylko wyswietla, bo tylko go wyswietlasz po wyslaniu forma.
katowicecentrum
Nikt mi nie odpowie na tak banalne pytanie, ja dalej nei wiem jak to zrobić :-/!!!!!!!!!!!!!!!!!!!!!!!!
redelek
No patrząc na to co podałeś w linku, i na to co tu zamieściłeś to nic nie wynika.
Musisz pokazać cały skrypt.

Powiem tak wygląda na to , że po wysłaniu formularza pojawia się
  1. <?php
  2. echo "Wiadomość wysłano";
  3. ?>


Zamiast tego możesz sobie wstawić sobie
1. przeniesienie na główną stronę
  1. <?php
  2. header('Location: index.php');
  3. ?>

2. przekierowanie z opóźnieniem
  1. <?php
  2. echo '<p> Za 5 sek. nastąpi automatyczne przekierowanie</p><META HTTP-EQUIV="Refresh" CONTENT="5; URL=index.php">';
  3. ?>


Oczywiście możesz wstawić co tam chcesz. Niestety nie mogę wskazać Ci linijki w której to trzeba zrobić, bo wydaje mi się, że kod który pokazałeś jest nie pełny.

Pozdrawiam
Redelek
katowicecentrum
Zamiast kodu w wierszu 30-31 daje ten Twój. Tą propozycję nr. 1. gdzie po wysłaniu maila strona miałaby po prostu przejść w inną. Po wysłaniu owszem, przechodzi... ale mail nie dociera. Ten kod jest nie pełny, brakuje mu tylko "formularza" pomiędzy wierszami 37-40. To nie jest kod już z danym formularzem, tylko z tym mechanizmem, który go wysyła z serwera na maila.
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.