Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Problem z PHP (formularz), Mały problem z PHP (formularz)
katowicecentrum
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 16.02.2009

Ostrzeżenie: (0%)
-----


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

Ten post edytował katowicecentrum 17.02.2009, 07:50:49
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




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.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
katowicecentrum
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 16.02.2009

Ostrzeżenie: (0%)
-----


Nikt mi nie odpowie na tak banalne pytanie, ja dalej nei wiem jak to zrobić :-/!!!!!!!!!!!!!!!!!!!!!!!!

Ten post edytował katowicecentrum 17.02.2009, 07:50:10
Go to the top of the page
+Quote Post
redelek
post
Post #4





Grupa: Zarejestrowani
Postów: 658
Pomógł: 37
Dołączył: 4.06.2005
Skąd: Wawa

Ostrzeżenie: (0%)
-----


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

Ten post edytował redelek 17.02.2009, 09:12:25


--------------------
Pozdrawiam
Piotrek R
Go to the top of the page
+Quote Post
katowicecentrum
post
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 16.02.2009

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 19:58