• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

przeróbka kodu html i php do formularza - zapłacę

Object Storage Arubacloud
0 głosów
633 wizyt
pytanie zadane 14 października 2017 w HTML i CSS przez ktostam64 Nowicjusz (120 p.)

Witam Mam Dwa kody, formularz działa ...ale potrzebuję kilka dodatkowych pól...coś robię nie tak bo albo wariuje albo nic nie wysyła. Sprawa pilna. Zapłacę. CSS jest oki, Potrzebuję kilka zmian w html i php

KOD html.

 <form role="form" action="assets/contact.php" method="post">
                            <div class="form-group">
                                <label for="contact-name">Name</label>
                                <input type="text" name="name" placeholder="Enter your name..." class="contact-name form-control" id="contact-name">
                            </div>
                            <div class="form-group">
                                <label for="contact-email">Email</label>
                                <input type="text" name="email" placeholder="Enter your email..." class="contact-email form-control" id="contact-email">
                            </div>
                            <div class="form-group">
                                <label for="contact-subject">Subject</label>
                                <input type="text" name="subject" placeholder="Your subject..." class="contact-subject form-control" id="contact-subject">
                            </div>
                            <div class="form-group">
                                <label for="contact-message">Message</label>
                                <textarea name="message" placeholder="Your message..." class="contact-message form-control" id="contact-message"></textarea>
                            </div>
                            <button type="submit" class="btn">Send</button>
                        </form>

 

KOD PHP:

<?php

// Email address verification
function isEmail($email) {
    return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i", $email));
}

if($_POST) {

    
    $emailTo = 'mail@gmail.com';

    $clientName = addslashes(trim($_POST['name']));
    $clientEmail = addslashes(trim($_POST['email']));
    $subject = addslashes(trim($_POST['subject']));
    $message = addslashes(trim($_POST['message']));

    $array = array();
    $array['nameMessage'] = '';
    $array['emailMessage'] = '';
    $array['messageMessage'] = '';

    if($clientName == '') {
        $array['nameMessage'] = 'Please enter your name.';
    }
    if(!isEmail($clientEmail)) {
        $array['emailMessage'] = 'Please insert a valid email address.';
    }
    if($message == '') {
        $array['messageMessage'] = 'Please enter your message.';
    }
    if($clientName != '' && isEmail($clientEmail) && $message != '') {
        // Send email
    $headers = "From: " . $clientName . " <" . $clientEmail . ">" . "\r\n" . "Reply-To: " . $clientEmail;
    mail($emailTo, $subject . ' (domena)', $message, $headers);
    }

    echo json_encode($array);

}

?>
 

 

Sprawa dosc pilna...Zapłacę za pomoc...Potrzebne są trzy dodatkowe standardowe pola 

Pozdrawiam

komentarz 14 października 2017 przez Tomek Sochacki Ekspert (227,510 p.)
jezu co to za regexp...? skąd go wziąłeś?
komentarz 14 października 2017 przez shotokan Nałogowiec (39,660 p.)

Po pierwsze usuń to straszne dziwne wyrażenie regularne!
Do walidacji e-maila służy funkcja w php, np.
 

$email1 = filter_var($email, FILTER_SANITIZE_EMAIL);
	if ((filter_var($email1, FILTER_VALIDATE_EMAIL)==false) || ($email1!=$email))
	{
		//kod jak warunek będzie nieprawdziwy czyli podano zły email
	}

dalej, lepiej użyć funkcji htmlentities()
i jeszcze funkcja mail czasami zawodzi, można ją zastąpić np. phpmailer
a na koniec to jakie pola potrzebujesz?

komentarz 14 października 2017 przez ktostam64 Nowicjusz (120 p.)
Witam...Dzięki, potrzebuję dwa proste pola...

np. nazwa, miejscowość

lub, tytuł, dział...

Resztę sobie zrobię...jednakzę w tym przypadku dodaję...i wszystko wisi...nie wiem co robię źle...dwa proste pola...a wszystko się wali...
komentarz 14 października 2017 przez shotokan Nałogowiec (39,660 p.)
edycja 14 października 2017 przez shotokan
hmmm, to bardzo dziwne, że jak dodasz jeszcze jakieś pole w formularzu to skrypt nie działa,
czy wywala jakiś błąd?, czy jak dodasz pole w formularzu, ale do php nic nie dodasz, to też są problemy?
nie widzę w kodzie php i html jakiegoś błędu więc powinno wszystko działać
a przy okazji to do sprawdzania pola w formularzu służą odpowiednie funkcje, np. do sprawdzania długości ciągu znaków - strlen(), do sprawdzania czy pole jest puste - if (empty($_POST['nazwa']) itp.
ja bym przerobił ten kod php na obsługę sesji i błędy wypełnienia formularza dał do zmiennych sesyjnych (ale to co masz to też jest jakiś sposób i raczej nie wpływa na działanie skryptu)
komentarz 14 października 2017 przez ktostam64 Nowicjusz (120 p.)
edycja 14 października 2017 przez ktostam64
Dokłądnie ...skrypt jest ok i normalnie chodzi beż zadnego problemu

natomiast po wysłaniu wiadomości ze skryptu:

- wychodzi autor , - w poczcie od kogo

- subiect - temat wiadomości

i  message jako treść wiadomości...

Ja potrzebuję dodatkowo dwa pola:

tak aby w treści wiadmości...było:

tytuł: xxxxxxxxxxx

dział: xxxxxxxxxxxx

wiadomość : xxxxxxxxxxxxxxxxx

 

I włąśnei w tym jest problem dodaję dodatkowe pola i się wiesza lub nic nie wysyła...

Jak dodadm do samego htmla...nic nie widać w wysłąnej wiadomości, jakby te pola nie istniały.

Chodzi mi o dopisanie do powyższego własnei tych dwu pól.

Jak wcześniej, mogę za powyższe zapłacić
komentarz 14 października 2017 przez shotokan Nałogowiec (39,660 p.)

polecam zapoznać się z działaniem funkcji mail() :
http://php.net/manual/pl/function.mail.php
ogólnie robisz jakąś zmienną np. $email_wiadomosc i do niej przypisujesz wartości pól formularza i ten jeden argument potem wysyłasz funkcją mail, np:
 

$email_do = "mail@mail.pl";
$email_temat = "Wiadomosc ze strony WWW";
$email_wiadomosc = "Wiadomość od: ".$osoba."\n Email: ".$email."\n Telefon: ".$telefon."\n Treść wiadomości: ".$wiadomosc;
$naglowek = "Content-Type:text/plain; charset=’utf-8\r\n";

mail($email_do, $email_temat, $email_wiadomosc, $naglowek)

//zmienne osoba, email, telefon, wiadomosc to pola z formularza, jak dodasz jeszcze jakieś pola to nie powinno być problemu

 

komentarz 14 października 2017 przez ScriptyChris Mędrzec (190,190 p.)

@ktostam64, umieść proszę kawałki kodu w odpowiednich bloczkach. Jeśli Twój temat dotyczy płatnego zlecenia, to zmień proszę kategorię na odpowiednią.

1 odpowiedź

+1 głos
odpowiedź 15 października 2017 przez niezalogowany

minus: Do wstawiania kodu używamy bloków kodu. Nie zmieniłeś tego pomimo prośby Krzycha92. Kategoria dalej niezmieniona.

Podobne pytania

0 głosów
1 odpowiedź 146 wizyt
0 głosów
2 odpowiedzi 145 wizyt
pytanie zadane 30 grudnia 2017 w HTML i CSS przez zbrzyzny Nowicjusz (200 p.)
0 głosów
1 odpowiedź 547 wizyt

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...