Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/mati/domains/forum.programosy.pl/public_html/includes/bbcode.php on line 112

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/mati/domains/forum.programosy.pl/public_html/includes/bbcode.php on line 112

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/mati/domains/forum.programosy.pl/public_html/includes/bbcode.php on line 112

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/mati/domains/forum.programosy.pl/public_html/includes/bbcode.php on line 112

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/mati/domains/forum.programosy.pl/public_html/includes/bbcode.php on line 112
Formularz - sprawdzanie pól i wysyłanie bez programu • programosy.pl

  • Ogłoszenie:

Formularz - sprawdzanie pól i wysyłanie bez programu

Wszystko odnośnie tworzenia grafiki - obróbka, problemy, oceny.
Tworzenia Stron internetowych - HTML, PHP, MySQL...

Formularz - sprawdzanie pól i wysyłanie bez programu

Postprzez RufuS* 22 Sie 2008, 13:55

reklama
Witam,
Stworzyłem sobie formularz w HTML. Chciałbym dodać do niego sprawdzanie pól oraz wysyłanie bez użycia programu pocztowego. Znalazłem jakieś rózne skrypty w javie i php ale nie znam się na tym kompletnie i potrzebowałbym kogoś aby zrobił mi 'gotowca'. Ciągle jakies błedy sie pojawiają i nic nie działa

Chciałbym aby pola były sprawdzane pod kątem uzupełnienia. Wyznaczyć niektóre pola do obowiązkowego wpisania. Jeżeli zostałby one puste wówczas formularz nie zostałby wysłany. Jasne chyba...
Ostatnio edytowany przez RufuS*, 07 Maj 2010, 21:05, edytowano w sumie 1 raz
AMD Phenom II X4 955 3,2 + SilentiumPC Fortis HE1225|| MSI 870A-G54 || Kingston HyperX 8GB DDR3-1333 CL9 || MSI GTX460 1024MB Cyclone OC || WD Blue 1TB || Seasonic M12II-520W || SilentiumPC Gladius 800 || NEC E222W + Philips 235PQ || Razer DeathAdder + QcK || Microsoft Digital Media Keyboard 3000 || Windows 7 Professional 64bit MSDNAA
Awatar użytkownika
RufuS*
~user
 
Posty: 1294
Dołączenie: 15 Maj 2005, 14:11
Miejscowość: Rybnik
Pochwały: 102



Formularz - sprawdzanie pól i wysyłanie bez programu

Postprzez JarekMk 22 Sie 2008, 14:04

Do wysyłania maili służy w php funkcja mail. Netarteria ma to uruchomione - wiem bo tez tam mam konto.

Kod: Zaznacz wszystko
<?php
// sprawdzamy, czy zmienna $submit jest pusta
if (empty($_POST['submit'])) {
    // wyświetlamy formularz
    echo "<table border=\"0\"><form method=\"post\">
<tr>
<td>Treść wiadomości</td>
<td><textarea name=\"tresc\" style=\"width: 250px; height: 100px\"></textarea></td>
</tr>
<tr>
<td>Imię, nazwisko lub nick</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=\"Od nowa\"></td></form>
</tr>
</table>";
}
// sprawdzamy, czy zmienne przesłane z formularza nie są puste
elseif (!empty($_POST['tresc']) && !empty($_POST['imie']) && !empty($_POST['email'])) {
    // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
    // zmienna $message zawiera treść wiadomości
    $message = "Treść wiadomości:\n$_POST[tresc]\nWysłał: $_POST[imie]\ne-mail: $_POST[email]";
    // zmienna $header zawiera przede wszystkim adres zwrotny
    $header = "From: $_POST[imie] <$_POST[email]>";
    // funkcja mail() za pomocą której wiadomość zostanie wysłana
    @mail("adres@domena.pl","Wiadomosc ze strony WWW","$message","$header")
    or die('Nie udało się wysłać wiadomości');
    // wyświetlenie komunikatu w przypadku powodzenia
    echo "<div align=\"center\"><strong>Wiadomość została wysłana poprawnie!</strong></div>";
}
// lub w przypadku nie wypełnienia formularza do końca
else echo "<span style=\"color: #FF0000; text-align: center;\">Wypełnij wszystkie pola formularza!</span>";

?>


Obczaj to. Czyli chcesz aby ten formularz po wypełnieniu został wysyłany funkcją mail pod odpowiedni adres, taj?
JarekMk
~user
 
Posty: 5151
Dołączenie: 10 Lis 2004, 13:38
Pochwały: 301



Formularz - sprawdzanie pól i wysyłanie bez programu

Postprzez RufuS* 22 Sie 2008, 14:06

Jarek napisał(a):Czyli chcesz aby ten formularz po wypełnieniu został wysyłany funkcją mail pod odpowiedni adres, taj?

Dokładnie tak.

Dodano 22 Sie 2008 15:17:
Kurcze... nie bardzo to chywtam :/

Probowalem orbic wg tego - http://www.kurshtml.boo.pl/html/wyslanie_formularza_bez_programu_pocztowego,formularze.html ale nie dziala :/
AMD Phenom II X4 955 3,2 + SilentiumPC Fortis HE1225|| MSI 870A-G54 || Kingston HyperX 8GB DDR3-1333 CL9 || MSI GTX460 1024MB Cyclone OC || WD Blue 1TB || Seasonic M12II-520W || SilentiumPC Gladius 800 || NEC E222W + Philips 235PQ || Razer DeathAdder + QcK || Microsoft Digital Media Keyboard 3000 || Windows 7 Professional 64bit MSDNAA
Awatar użytkownika
RufuS*
~user
 
Posty: 1294
Dołączenie: 15 Maj 2005, 14:11
Miejscowość: Rybnik
Pochwały: 102



Re: formularz - sprawdzanie pól i wysyłanie bez programu

Postprzez Budosz 22 Sie 2008, 20:26

Ja używam tego ww z małą modyfikacją (działa w 100%)
Kod: Zaznacz wszystko
<?php
if (count($_POST))
{
     ////////// USTAWIENIA //////////
     $email = 'xxx@xx.xx';     // Adres e-mail adresata
     $subject = 'temat';     // Temat listu
     $message = 'Dziękujemy';     // 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 (!empty($value))
            $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="submit" name="ok" value="WYSLIJ" size="30" />
<input type="reset" value="WYCZYŚĆ FORMULARZ"></input>



/////TWOJE POLA/////

</form>
<?php
}
?>


jak byś miał jakieś problemy z wklejeniem to pisz.

Musisz zmienić nazwę pliku z index.html na index.php i wrzucić plik na server bo z poziomu windowsa bez specjalnego programu tego nie otworzysz.

Autor postu otrzymał pochwałę
P5QL PRO|Q6600 2.4@3.2|Patriot/A-data 4Gb/801mhz CL5|Gainward HD4850 Golden Sample|Chieftec 400W|Windows 7 Ultimate x64|
Awatar użytkownika
Budosz
~user
 
Posty: 1348
Dołączenie: 25 Kwi 2006, 17:17
Miejscowość: Londyn
Pochwały: 28



Formularz - sprawdzanie pól i wysyłanie bez programu

Postprzez RufuS* 23 Sie 2008, 12:21

Kurcze... wydawało mi sie że już testowalem ten skrypt i nie działał...


No ale mniejsza z tym, już wszystko w porządku. A co ze sprawdzaniem pól? I czy dałoby się ustawić tak aby po odświeżeniu strony formularz się czyścił?
AMD Phenom II X4 955 3,2 + SilentiumPC Fortis HE1225|| MSI 870A-G54 || Kingston HyperX 8GB DDR3-1333 CL9 || MSI GTX460 1024MB Cyclone OC || WD Blue 1TB || Seasonic M12II-520W || SilentiumPC Gladius 800 || NEC E222W + Philips 235PQ || Razer DeathAdder + QcK || Microsoft Digital Media Keyboard 3000 || Windows 7 Professional 64bit MSDNAA
Awatar użytkownika
RufuS*
~user
 
Posty: 1294
Dołączenie: 15 Maj 2005, 14:11
Miejscowość: Rybnik
Pochwały: 102



Re: formularz - sprawdzanie pól i wysyłanie bez programu

Postprzez Budosz 23 Sie 2008, 14:39

Teraz na maila wysyła tylko uzupełnione pola. Chodzi ci o takie sprawdzanie, ze jak ktoś nic nie napisze to wyskakuje błąd?
Do czyszczenie może posłużyć przycisk który ci podałem w tym kodzie ;)
<input type="reset" value="WYCZYŚĆ FORMULARZ">

co do sprawdzania pół znalazłem coś takiego:
http://republika.onet.pl/2563,34,1,,fabryka.html
P5QL PRO|Q6600 2.4@3.2|Patriot/A-data 4Gb/801mhz CL5|Gainward HD4850 Golden Sample|Chieftec 400W|Windows 7 Ultimate x64|
Awatar użytkownika
Budosz
~user
 
Posty: 1348
Dołączenie: 25 Kwi 2006, 17:17
Miejscowość: Londyn
Pochwały: 28



Formularz - sprawdzanie pól i wysyłanie bez programu

Postprzez RufuS* 23 Sie 2008, 14:53

Budosz napisał(a):Chodzi ci o takie sprawdzanie, ze jak ktoś nic nie napisze to wyskakuje błąd?

Dokładnie tak. Tzn wskazałbym pola obowiązkowe ktróre użytkownik musi wypełnić. Jeżeli tego nie zrobi pojawi się błąd, w formie okienka lub podstrony.

Budosz napisał(a):Do czyszczenie może posłużyć przycisk który ci podałem w tym kodzie ;)
<input type="reset" value="WYCZYŚĆ FORMULARZ">

Nie o to mi chodzi. Ale to w sumie nie ważne... Najbardziej zależy mi na tym sprawdzaniu pól.

Dodano 23 Sie 2008 17:29:
Problem rozwiązany - użyłem tego skryptu:
Kod: Zaznacz wszystko
<script type="text/javascript">
// <![CDATA[
function sprawdz(formularz)
{
   for (i = 0; i < formularz.length; i++)
   {
      var pole = formularz.elements[i];
      if (!pole.disabled && !pole.readonly && (pole.type == "text" || pole.type == "password" || pole.type == "textarea") && pole.value == "")
      {
         alert("Proszę wypełnić wszystkie pola!");
         return false;
      }
   }
   return true;
}
// ]]>
</script>

<form action="mailto:adres e-mail?subject=temat" method="post" enctype="text/plain" onsubmit="if (sprawdz(this)) return true; return false">
<div>


DANE FORMULARZA

</div>
</form>
AMD Phenom II X4 955 3,2 + SilentiumPC Fortis HE1225|| MSI 870A-G54 || Kingston HyperX 8GB DDR3-1333 CL9 || MSI GTX460 1024MB Cyclone OC || WD Blue 1TB || Seasonic M12II-520W || SilentiumPC Gladius 800 || NEC E222W + Philips 235PQ || Razer DeathAdder + QcK || Microsoft Digital Media Keyboard 3000 || Windows 7 Professional 64bit MSDNAA
Awatar użytkownika
RufuS*
~user
 
Posty: 1294
Dołączenie: 15 Maj 2005, 14:11
Miejscowość: Rybnik
Pochwały: 102




Powróć do Grafika & Webmastering

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 26 gości