![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 10.01.2012 Ostrzeżenie: (0%) ![]() ![]() |
Siemano
Problem jest z formularzem - nie wysyla e-maila i wyskakuje 'fail' . Do sprawdzenia na www.gmakademia.yoyo.pl/kontakt.php i o poprawe aby wysylal wszystkie informacje w e-mailu. Formularz.php Kod <form action="#strona#" method="post" id="formularz"> <div> <label>Imię : <span class="red">*</span></label> <input type="text" id="imie" name="imie" value="#imie#" /> </div> <div> <label>Nazwisko: <span class="red">*</span></label> <input type="text" id="nazwisko" name="nazwisko" value="#nazwisko#" /> </div> <div> <label>Adres e-mail: <span class="red">*</span></label> <input type="text" id="mail" name="mail" value="#mail#" /> </div> <div> <label>Telefon: <span class="red">*</span></label> <input type="text" id="telefon" name="telefon" value="#telefon#" /> </div> <div> <label>Firma: <span class="red">*</span></label> <input type="text" id="firma" name="firma" value="#firma#" /> </div> <div> <label>Adres: <span class="red">*</span></label> <input type="text" id="adres" name="adres" value="#adres#" /> </div> <div> <label>Miasto: <span class="red">*</span></label> <input type="text" id="miasto" name="miasto" value="#miasto#" /> </div> <div> <label>Województwo/Region: <span class="red">*</span></label> <select name="Wojewodztwo/region" size="1" value="#region#"> <option value="Biała Podlaska">Biala Podlaska <option value="Bialystok">Bialystok <option value="Bielsko-Biała">Bielsko-Biała <option value="Bydgoszcz">Bydgoszcz <option value="Chełm">Chełm <option value="Ciechanów">Ciechanów <option value="Częstochowa">Częstochowa <option value="Elbląg">Elbląg <option value="Gdańsk">Gdańsk <option value="Gorzów">Gorzów <option value="Jelenia Góra">Jelenia Góra <option value="Kalisz">Kalisz <option value="Katowice">Katowice <option value="Kielce">Kielce <option value="Konin">Konin <option value="Koszalin">Koszalin <option value="Kraków">Kraków <option value="Krosno">Krosno <option value="Legnica">Legnica <option value="Leszno">Leszno <option value="Łódź">Łódź <option value="Łomża">Łomża <option value="Lublin">Lublin <option value="Nowy Sącz">Nowy Sącz <option value="Olsztyn">Olsztyn <option value="Opole">Opole <option value="Ostrołęka">Ostrołęka <option value="Piła">Piła <option value="Piotrków">Piotrków <option value="Płock">Płock <option value="Poznań">Poznań <option value="Przemyśl">Przemyśl <option value="Radom">Radom <option value="Rzeszów">Rzeszów <option value="Siedlce">Siedlce <option value="Sieradz">Sieradz <option value="Skierniewice">Skierniewice <option value="Słups">Słupsk <option value="Suwałki">Suwałki <option value="Szczecin">Szczecin <option value="Tarnobrzeg">Tarnobrzeg <option value="Tarnów">Tarnów <option value="Toruń">Toruń <option value="Wałbrzych">Wałbrzych <option value="Warszawa">Warszawa <option value="Włocławek">Włocławek <option value="Wrocław">Wrocław <option value="Zamość">Zamość <option value="Zielona Góra">Zielona Góra </select> </select> </div> <div> <span class="red">*</span> - oznacza pola wymagane. </div> <div> <input type="submit" value="Wyślij" /> </div> </form> mail.php Kod <?php include ('formularz/ustawienia.php'); ob_start(); include('formularz/formularz.php'); $formularz = ob_get_contents(); ob_end_clean(); function wyswietl_forme($komunikat='') { global $formularz; $do_zmiany = array( '#komunikat#', '#strona#', '#imie#', '#nazwisko#', '#mail#', '#telefon#', '#firma#', '#adres#', '#miasto#', '#region#' ); $zmien_na = array( $komunikat, $_SERVER['REQUEST_URI'], $_POST['imie'], $_POST['nazwisko'], $_POST['mail'], $_POST['telefon'], $_POST['firma'], $_POST['adres'], $_POST['miasto'], $_POST['region'] ); $formularz = str_replace ( $do_zmiany, $zmien_na, $formularz); return $formularz; } function waliduj() { global $komunikat; global $valid; if( $valid['imie'] > 0 ) { if(strlen($_POST['imie']) < $valid['imie'] ){ $walidacja['imie'] = $komunikat['imie']; } } if( $valid['nazwisko'] > 0 ) { if(strlen($_POST['nazwisko']) < $valid['nazwisko'] ){ $walidacja['nazwisko'] = $komunikat['nazwisko']; } } if( $valid['mail'] == 0 ) { if(!filter_var($_POST['mail'],FILTER_VALIDATE_EMAIL)) { $walidacja['mail'] = $komunikat['mail']; } } if( $valid['telefon'] > 0 ) { if(strlen($_POST['telefon']) < $valid['telefon'] ){ $walidacja['telefon'] = $komunikat['telefon']; } } if( $valid['firma'] > 0 ) { if(strlen($_POST['firma']) < $valid['firma'] ){ $walidacja['firma'] = $komunikat['firma']; } } if( $valid['adres'] > 0 ) { if(strlen($_POST['adres']) < $valid['adres'] ){ $walidacja['adres'] = $komunikat['adres']; } } if( $valid['miasto'] > 0 ) { if(strlen($_POST['miasto']) < $valid['miasto'] ){ $walidacja['miasto'] = $komunikat['miasto']; } } if(empty($walidacja)) { return 'true'; }else{ return $walidacja; } } // Działanie if (($_SERVER['REQUEST_METHOD'] == 'POST')) {// wejście postem $walidacja = waliduj(); if ($walidacja == 'true'){ //poprawnie wypełniony formularz if(mail($adres_odbiorcy,"=?UTF-8?B?".base64_encode($_POST['telefon'])."?=",'<p>Od: <b>'.$_POST['imie'].''.$_POST['nazwisko'].'</b><b>'.$_POST['nazwisko'].'</b></p><pre>'.$_POST['tresc'].'</pre>','From:'.$_POST['mail']."\r\nContent-Type: text/html; charset=utf-8")){ //sukces print ' <div id="sukces"> <p>'.$komunikat['sukces'].'</p> </div> '; }else{ //bląd serwera print ' <div id="blad"> <p>'.$komunikat['fail'].'</p> </div> '; print wyswietl_forme(); } }else{ //błędna walidacja $blad_walidacji = $walidacja; $blad_walidacji = ' <div id="blad"> <p>'.$komunikat['blad'].'</p> <ul> '; foreach ($walidacja as $wpis) { $blad_walidacji .= '<li>'.$wpis.'</li>'; } $blad_walidacji .= ' </ul> </div> '; print wyswietl_forme($blad_walidacji); } }else{ // nowe wejście print wyswietl_forme(); } ?> ustawienia.php Kod <?php
/* Ustawienia formularza kontaktowego */ $adres_odbiorcy = 'filar1994@gmail.com'; //tu wpisz adres e-mail na który mają przychodzić wiadomości /* Ustawienia wymaganych pól */ /* Pamiętaj, żeby oznaczyć wymagane pola w formularzu - plik formularz.php */ $valid['imie'] = 2; // Imie: 0 - oznacza pole nieobowiązkowe, inna liczba minimalną ilość znaków jakie musi wpisać użytkownik $valid['nazwisko'] = 2; // Nazwisko: 0 - oznacza pole nieobowiązkowe, inna liczba minimalną ilość znaków jakie musi wpisać użytkownik $valid['mail'] = 1; // e-mail: 0 - oznacza pole nieobowiązkowe, 1 - pole wymagane $valid['telefon'] = 5; // Temat: 0 - oznacza pole nieobowiązkowe, inna liczba minimalną ilość znaków jakie musi wpisać użytkownik $valid['firma'] = 1; // Firma: 0 - oznacza pole nieobowiązkowe, inna liczba minimalną ilość znaków jakie musi wpisać użytkownik $valid['miasto'] = 5; // Miasto: 0 - oznacza pole nieobowiązkowe, inna liczba minimalną ilość znaków jakie musi wpisać użytkownik $valid['region'] = 5; // Region: 0 - oznacza pole nieobowiązkowe, inna liczba minimalną ilość znaków jakie musi wpisać użytkownik /* Komunikaty */ $komunikat['sukces'] = 'Dziękujemy. Twoja wiadomość została wysłana.'; //Wiadomość po udanym wysłaniu formularza $komunikat['blad'] = 'W celu pobrania dema popraw poniższe błędy.'; //Wiadomość przy błędzie w sprawdzaniu danych, błędy zostaną wymienione poniżej $komunikat['imie'] = 'Wpisz właściwe imię'; //Wpisz właściwą ilość znaków jeśli pole wymagane $komunikat['nazwisko'] = 'Wpisz właściwe nazwisko'; //Wpisz właściwą ilość znaków jeśli pole wymagane $komunikat['mail'] = 'Podaj poprawny adres e-mail.'; //Wiadomość po błędnym wpisaniu adresu e-mail $komunikat['telefon'] = 'Wpisz poprawny numer telefonu'; //Wpisz właściwą ilość znaków jeśli pole wymagane $komunikat['firma'] = 'Wpisz poprawną nazwe firmy'; //Wpisz właściwą ilość znaków jeśli pole wymagane $komunikat['fail'] = 'Przepraszamy wystąpił chwilowy błąd. Spróbuj ponownie później'; //W przypadku nieudanego wyslania wiadomości np. błędu serwera ?> |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 711 Pomógł: 127 Dołączył: 5.07.2008 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
A my jak te psy rzucamy się na analizę kodu i przynosimy poprawiony w pysku. Litości ludzie...
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 10.01.2012 Ostrzeżenie: (0%) ![]() ![]() |
kod jest prosty do analizy, wiec nie narzekaj... pomoc jest dobrowolna wiec nie widze problemu ktory wytaczasz w swojej wypowiedzi... nie chcesz - nie pomagasz. Mam problem ktorego nie potrafie sam rozwiklac, a ktos moze zauwazy w czym jest blad.
Pozdro ![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 711 Pomógł: 127 Dołączył: 5.07.2008 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
1. Nie ten dział, to się nadaje do przedszkola
2. Brak odpowiednich tagów przez co kod jest nieczytelny. 3. Brak magicznego słowa proszę |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 10.01.2012 Ostrzeżenie: (0%) ![]() ![]() |
1. W takim razie prosze moda o przeniesienie do odpowiedniego dzialu
2. Moglbys rozszerzyc troche mysl, bo odpowiednie tagi malo mi mowi 3. Prosze bardzo ad. 2 moga to byc zrodla problemu niedzialania kodu ? (domyslam sie ze przeczytales chociaz czesc) |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 307 Pomógł: 37 Dołączył: 9.11.2010 Skąd: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Po pierwsze, zapoznałeś się z tym:
http://www.yoyo.pl/pomoc/index.php?action=kb&article=38 Sprawdź najpierw czy możesz bez problemów wysyłać proste wiadomości typu (przykład z php.net):
Jeżeli tak to sprawdź czy linia z mail() się w ogóle wykonuje. Zrób też echo z adresu odbiorcy, tematu, treści i nagłówków i pokaż tutaj. Swoją drogą czytać się tego nie da bez wcięć ![]() Ten post edytował Uriziel01 10.01.2012, 15:30:58 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 12:08 |