Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Formularz kontaktowy HTML5 - Form action PHP jak ?

martiv 30 Lip 2013 21:29 3279 8
  • #1 30 Lip 2013 21:29
    martiv
    Poziom 18  

    Witam serdecznie,
    Mam o to taki formularz w HTML5

    Kod: html5
    Zaloguj się, aby zobaczyć kod


    Czy ktoś pomoże w napisaniu skryptu PHP do wysyłania z tego formularza ?
    Generalnie posiadam plik np. send.php ale nie otrzymuje wszystkich wypełnionych pól z formularza a jedynie tytuł i temat ... ze względów na to, że się nie znam na php proszę was mocno o pomoc.

    0 8
  • #2 31 Lip 2013 11:26
    arnoldziq
    Moderator Programowanie

    Po pierwsze, twój skrypt nie otrzyma żadnych danych, ze względu na to, że wysyłasz je w "powietrze":

    Kod: html5
    Zaloguj się, aby zobaczyć kod

    Zmień to na :
    Kod: html5
    Zaloguj się, aby zobaczyć kod

    A potem to już całkiem prosto:
    Kod: php
    Zaloguj się, aby zobaczyć kod

    Jedynie z wysyłką załącznika jest trochę więcej zabawy, ale to także dość proste. Jak już "zagospodarujesz" wcześniejsze dane to chętnie pomogę z zapisaniem załącznika.

    0
  • #3 31 Lip 2013 16:48
    martiv
    Poziom 18  

    Dzięki za podpowiedź, właśnie zmieniłem z action na action.php

    tylko z tym, że plik action.php zawiera następującą treść:

    Kod: php
    Zaloguj się, aby zobaczyć kod


    i jak wkomponować to co mi podałeś? :

    Kod: php
    Zaloguj się, aby zobaczyć kod


    Próbowałem na wszelkie sposoby, ale wciąż otrzymywałem pustą treść e-mail.

    0
  • #4 31 Lip 2013 18:17
    arnoldziq
    Moderator Programowanie

    Ten kod w 'action.php' tylko wysyła (a w zamyśle powinien) potwierdzenie do osoby wypełniającej formularz. nie wiem tylko, czemu na stałe jest tam ustawiony jeden adres.
    To co masz zamiar zrobić z danymi wpisanymi do tego formularza, zależy tylko od Ciebie.

    Możesz np. pobrać ten podany przez użytkownika email i wysłać potwierdzenie do niego :

    Kod: php
    Zaloguj się, aby zobaczyć kod

    0
  • #5 31 Lip 2013 18:36
    martiv
    Poziom 18  

    generalnie zależy mi tylko na tym, że ktoś wypełniając formularz na stronie tj:

    Imię i nazwisko: Jan Kowalski
    Adres e-mail: nazwa(malpa)nazwa.pl
    Numer telefonu: 000-000-000
    Wybierz temat rozmowy: Menu rozwijane i np. konsultacja z doradcą
    Preferowana forma kontaktu: wybór np. e-mail, telefon zaznaczenie.
    Posiadasz już daną usługę: wybór TAK lub NIE
    Załącznik : załącza sobie np. jakiś plik i jest on dołączany do e-mail

    Wyślij

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

    Ja otrzymam na swój e-mail takie dane:

    Jan Kowalski
    nazwa(malpa)nazwa.pl
    tel. 000 - 000 - 000
    Temat: Konsultacja z doradcą
    Preferowana forma kontaktu: telefon
    Posiadam usługę: TAK
    Załącznik: umowa.doc

    lub coś w tej formie :-) a tak dostaje całkowicie coś innego albo pewnych opcji nie otrzymuje...

    Mam zrobiony formularz w HTML5 ze stylem form.css ładnie wygląda, ale niestety do niego musi być dołączony plik .php który pobierze dane z formularzy i przesle mi je na mój e-mail no i tu mam problem, prosty formularz nie ma problemu typu: Imię, nazwisko, e-mail, wiadomość ale gdzie reszta :-(

    0
  • #6 01 Sie 2013 11:08
    arnoldziq
    Moderator Programowanie

    martiv napisał:
    wiadomość ale gdzie reszta :(

    "Resztę" musisz odczytać na podobnych zasadach.
    I wysłać do siebie. Początki skryptu już masz, teraz tylko odczytać "resztę" i załatwione.

    Kod: php
    Zaloguj się, aby zobaczyć kod

    0
  • #7 02 Sie 2013 19:27
    oskar777

    Poziom 25  

    Jaki jest cel tego?

    Kod: php
    Zaloguj się, aby zobaczyć kod

    isset to najgorszy wybór z tego co można dać albo !empty albo !is_null
    Patrz http://techtalk.virendrachandak.com/php-isset-vs-empty-vs-is_null/
    isset prawie wszędzie Ci true zwróci, poza tym twój warunek nic nie robi.
    Sam zapis można dać prościej
    Dałem małą poprawkę
    Kod: php
    Zaloguj się, aby zobaczyć kod


    W samym kodzie po spełnieniu warunku można dać od razu
    Kod: php
    Zaloguj się, aby zobaczyć kod

    nie ma sensu tworzyć nie potrzebnych zmiennych.

    0
  • #8 06 Sie 2013 21:42
    arnoldziq
    Moderator Programowanie

    oskar777 napisał:
    isset to najgorszy wybór z tego co można dać albo !empty albo !is_null
    Patrz http://techtalk.virendrachandak.com/php-isset-vs-empty-vs-is_null/
    isset prawie wszędzie Ci true zwróci, poza tym twój warunek nic nie robi.

    Drogi kolego, chyba jednak kolega nie doczytał do końca podanej przez siebie strony.
    Sugeruję włączyć wyświetlanie błędów i wywołać 'empty' z parametrem, którym jest niezdefiniowana zmienna.

    0
  • #9 07 Sie 2013 10:50
    oskar777

    Poziom 25  

    A ja sugeruje czytanie manuala
    http://www.php.net/manual/en/function.empty.php
    Determine whether a variable is considered to be empty. A variable is considered empty if it does not exist or if its value equals FALSE. empty() does not generate a warning if the variable does not exist.

    Kod: php
    Zaloguj się, aby zobaczyć kod
    wygeneruje informacje
    ale
    Kod: php
    Zaloguj się, aby zobaczyć kod
    nie wygenerują informacji.
    Kolejna sprawa, niezdefiniowana zmienna to nie błąd i domyślnie E_NOTICE nie jest domyślnie uruchomione na serwerach tutaj trzeba czasem zajrzeć do php.ini,
    Warto oczywiście tego pilnować ale nie wpływa to na działanie tego skryptu.

    0