![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 13.02.2006 Skąd: Świnoujście Ostrzeżenie: (0%) ![]() ![]() |
Oto prosty formularz kontaktowy:
a to (nie wiem, czy będzie potrzebne) plik wykonawczy send.php:
po zgraniu plików na serwer i próbie wejście na stronę formularza pojawia się błąd: Parse error: parse error, unexpected $ in gj/contact.php on line 75 A w linii 75 znajduje się jedynie: Kod </div> Jednocześnie po wyrzuceniu z pliku formularza funkcji sprawdzającej wypełnienie danych pól
i wywołujących ją poleceń: i wszystko działa bez zarzutu. Jaki jest błąd w tej funkcji error? Dodam tylko, że kiedy wrzuci się ją do pliku send.php, formularz pojawia się, ale przy wysyłaniu (niezależnie od wypełnienia lub niewypełnienia pól) pojawia się strona send.php z tym samym błędem, tyle, że linijka błędu wypada na Kod ?> ... Może da się uzyskać podobny efekt (tzn. przy niewypełnieniu danych pól wyrazy "Name", "Comment" itp. zmieniają kolor na czerwony) w inny, mniej problematyczny sposób? Z góry wielkie dzięki za pomoc. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Nigdzie nie widze bys zamknal ten blok ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 13.02.2006 Skąd: Świnoujście Ostrzeżenie: (0%) ![]() ![]() |
Co dziwne, w kodzie księgi gości, którą przerobiłam na ten formularz kontaktowy, wygląda to właśnie w ten sposób, i wszystko działa bez zarzutu... Czyli to pojedyncze "{" jest niepotrzebne (skoro nie było po nim niczego w oryginalnym kodzie)? Po jego wyrzuceniu owszem, błąd się już nie pojawia, ale przy niewypełnieniu pól i tak dostaję komunikat "Thanks...". Czy może trzeba coś po tym "{" dopisać? Sorry, ale zupełnie się na tym nie znam, i zmuszona jestem do stosowania metody "prób i błędów"...
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 106 Pomógł: 1 Dołączył: 2.12.2005 Skąd: Jaworzno Ostrzeżenie: (0%) ![]() ![]() |
"thanks" zawsze Ci się wyświetli, bo tak to napisałaś, zrób to na warunku:
Poza tym proponuję kożystać z Cytat <?php ?> , a nie z Cytat <? ?> - żaden wysiłek, a może Ci kiedyś zaoszczędzić trochę czasu i nerwów
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 13.02.2006 Skąd: Świnoujście Ostrzeżenie: (0%) ![]() ![]() |
No tak, ale mnie przede wszystkim zależy na efekcie zmiany koloru nazwy pominiętego pola (jeśli obowiązkowe) na czerwony... Po zastosowaniu proponowanego przez Ciebie kodu i tak wyświetliło się "thanks", teraz to ja już w ogóle niczego nie rozumiem.
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 106 Pomógł: 1 Dołączył: 2.12.2005 Skąd: Jaworzno Ostrzeżenie: (0%) ![]() ![]() |
1) skoro wyświetliło "thanks" to znaczy, że wysłało maila ( funkcja mail zwróciła TRUE). A co do zmiany koloru, to czy w skrypcie sprawdzającym nie powinnaś na początku skryptu pobrać danych ze zmiennych globalnych:
bo skąd tam by miała być jakakolwiek wartość np. w $name ? najlepiej wyechuj sobie na początku te zmienne i będziesz widzieć co w nich siedzi. 2) Następna rzecz w tym skrypcie sprawdzaczu, to masz:
a czy gdziekolwiek masz wpisywane coś do tej $action, bo ja nigdzie nie widzę? 3) W send.php zrób tak, żeby najpierw sprawdzało (na if-ie) czy pola obowiązkowe są wypełnione, a dopiero po spełnieniu warunków wywołuj funkcję mail() |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat W send.php zrób tak, żeby najpierw sprawdzało (na if-ie) czy pola obowiązkowe są wypełnione, a dopiero po spełnieniu warunków wywołuj funkcję mail() Co racja to racja ![]() I to mozna by powiedziec jest częściowo zrobione, bo w skrypcie z formularzem kontaktowym jest zmiana kolorow, gdy jest blad. teraz tylko pytanie, czy plik z formularzem, oraz plik z wyslaniem maila to ten sam plik? Bo jesli nie, to te kolorowanko co masz zrobione nigdy sie nie wykona, gdyz formularz po wyslaniu leci do innego skryptu ![]() Powinien leciec do tego samego skryptu, a w przypadku gdy nie bedzie bledów, to powinienes np. zincludowac skrypt z wyslaniem maila i powinno byc ok bardzo skrocona wersja skryptu z formularzem:
No i tak jak wspomniano wczesniej. Odwoluj sie do danych z posta poprzez tablicę $_POST A czemu tak? pole hidden jest tu zbedne. pomine fakt ze dla hiddenow nie nadaje sie atrybutu class ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 13.02.2006 Skąd: Świnoujście Ostrzeżenie: (0%) ![]() ![]() |
Serdeczne dzięki, wszystko działa, aż miło, i kto by w to uwierzył przy mojej zerowej znajomości php
![]() Jednak dopiero teraz przyuważyłam jeszcze jeden drobny błąd, tzn. skrypt przy niezaznaczeniu jakiejkolwiek opcji radio "contact" i tak wysyła maila nie podświetlając na czerwono nazwy. Prawdopodobnie brakuje wywołania funkcji error, ale gdzie je wstawić i w jakiej formie w przypadku radio? |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
pole radio gdy nie jest zazanczone, to sie nie wysyla wogole. tak wiec ty warunek okreslasz dpiero po zrobieniu isset, to ci tam nigdy nie wejdzie gdy nic nie zaznaczysz.
jesli isset() zwroci ci true, znaczy, że pole radio zostalo zaznaczone i juz nic wiecej nie musisz sprawdzac. pozatym troche bez sensu masz te warunki. bo najpierw sprawdzasz czy jest index ustawiony a dopiero potem sprawdzasz wypelnienie pola lub nie. powinienes raz sprawdzic czy formularz byl wyslany, a potem juz tylko sprawdzac pola:
ps: Cytat wszystko działa, aż miło, i kto by w to uwierzył przy mojej zerowej znajomości php Przy nas wyjdziesz na ludzi ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 07:23 |