Fomularze Html-tworzenie podformularzy

0

Chciałbym ,aby po klikniecu na przycisk poprawnie sprawdzało mi czy wpisałem imie,nazwisko,adres i kwiaty. Ale niestety nie potrafie polaczyc tego z wysyłaniem formularza przez maila,bo bierze mi tylko cześć formularza gdyż umieśćiłem go pod formularzem do sprawdzania poprawnosci.
Niestety gdy chce wstawić formularz ten z mailem by także wysłać imie,nazwisko,adres i kwiaty pojawia się problem,bo po wcisnieciu buttona czy poprawnie także wysyła się wiadomość.
Jak rozgraniczyć te dwie rzeczy ,bym mogl sprawdzić poprawność ,a także spokojnie wysłać cały formularz ?:P)


<HTML>
<script type="text/javascript" src="skrypt.js"></script>
<!—To jest próba utworzenia pierwszej strony >
<HEAD>
<TITLE> Zamowienia </TITLE>
</HEAD>
<BODY>

<p><h5 align="center" >
Witamy na Stronie zamowien sklepu Relax <BR>
Ponizej znajduje się lista naszych produktow do wyboru. <BR>
<h5></p>


<ul type="circle" style="color: red">

<a href="strona.html">Powrot do strony głównej </a>



<form id="formularz" action=""><div>
<h3>
<li><span style="color: black"> Podaj swoje imię: <input type="text" name="imie"> </br>  </span> </li>
<li><span style="color: black"> Podaj swoje nazwisko: <input type="text" name="nazwisko"> </br> </span> </li>
<li><span style="color: black"> Podaj swoj adres:  <input type="text" name="adres"> </br> </span> </li>
<li><span style="color: black"> Podaj Ilosc Kwiatów  : <input type="text" name="kwiaty"> </br> </span> </li>
</h3>
</ul>
<button onclick="return sprawdz_formularz()"> Czy Poprawnie</button>
</div></form>

<form action="mailto:[email protected]" method="post" enctype="text/plain"><d

<!-- Pole typu CHECKBOX -->
<p>Jakie kwiaty ?</p>
<input type="checkbox" name="Kwiat" value="Forsycja" />Forsycja<br />
<input type="checkbox" name="Kwiat" value="Roza " />Róża<br />
<input type="checkbox" name="Kwiat" value="Kaktus" />Kaktus<br />
<input name="kwiaty" />

<!-- Pole komentarza (o powiększonych rozmiarach oraz z tekstem domyślnym) -->
<p>Podaj swój komentarz:</p>
<textarea name="Komentarz" cols="50" rows="10">Proszę, wpisz tutaj jakiś komentarz...</textarea>
<br /><br /><br />
<!-- Przycisk WYŚLIJ -->
<input type="submit" value="Wyślij formularz" />
<!-- Przycisk WYCZYŚĆ DANE -->
<input type="reset" value="Wyczyść dane" />
</div></form>
</BODY>
</HTML>





function sprawdz_formularz()
{
    // zmienna przechowujaca komunikaty bledow
    var bledy = '';
    // przypisanie obiektu formularza do zmiennej
    var f = document.forms['formularz'];
    
    // sprawdzenie imienia
    if (f.imie.value == '')
        bledy += 'Musisz wpisac imie!\n';
		  if (f.adres.value == '')
        bledy += 'Musisz wpisac adres!\n';
		  if (f.kwiaty.value == '')
        bledy += 'Musisz wpisac kwiaty!\n';
    // sprawdzenie nazwiska
    if (f.nazwisko.value == '')
        bledy += 'Musisz wpisac nazwisko!\n';
    
    // sprawdzenie czy byly bledy 
    if (bledy == '')
        return true;
    else
    {
        alert(bledy);
        return false;
    }
}

0

Brak nawiasu zamykającego funkcje.

Poza tym:
Tagi HTML dużymi literami (sugeruje naukę z nieaktualnych źródeł).
Tag <script> poza <head> i <body> ?
align type i inne przestarzałe atrybuty - znowu nauka z nieaktualnych źródeł.
<!—To jest próba utworzenia pierwszej strony > --- to nie jest poprawny komentarz. I dlaczego tu jest długa pauza, jak w Wordzie?!
Porzucone <d nie wiadomo od czego
Trochę losowe wcięcia w JS
W ifach zawsze warto pisać klamerki - unikniesz pomyłki przez dopisanie jeszcze jednej linii, która jak się okaże - będzie się wykonywać zawsze
<br> nie ma zamknięcia, jest co najwyżej samozamykalny: <br />
Input u Ciebie czasem jest jako samozamykalny: <input /> czasem w starym zapisie <input>

Leżysz na drobnostkach i szczegółach. A na takie szczegóły trzeba zwracać uwagę, bo się pisze dziury.

0

Funkcja w javascript? Przeciez jest zamknieta , zadnych innych funkcji tu nie widze.

0

a fakt, to ja źle skopiowałem. anyway - mi to działa w takim razie, po skopiowaniu tego tak jak jest. ścieżka do pliku js jest poprawna?

0

Chodzi mi o ten kawelek by zrobić tak aby w mailu lapalo mi takze dane z tego pierwszego znacznika form o nazwie "formularz" ,bo lapie do maila tylko reszte od checkboxow.
Każde umieszczenie na górze tego kawałka z mailem <form action="mailto:[email protected]" method="post" enctype="text/plain"> spowoduje ,że po kliknieciu na kazdy z obu przyciskow i tak bedzie chcialo wysłać maila :(

Cholera topornie to wytlumaczylem na poczatku :D

<form id="formularz" action=""><div>
<h3>
<li><span style="color: black"> Podaj swoje imię: <input type="text" name="imie"> </br>  </span> </li>
<li><span style="color: black"> Podaj swoje nazwisko: <input type="text" name="nazwisko"> </br> </span> </li>
<li><span style="color: black"> Podaj swoj adres:  <input type="text" name="adres"> </br> </span> </li>
<li><span style="color: black"> Podaj Ilosc Kwiatów  : <input type="text" name="kwiaty"> </br> </span> </li>
</h3>
</ul>
<button onclick="return sprawdz_formularz()"> Czy Poprawnie</button>
</div></form>
 
<form action="mailto:[email protected]" method="post" enctype="text/plain">
</form>
0

to może inaczej - co ty w ogóle chcesz osiągnąć. bez kodów, bez technicznych opisów. od strony użytkownika co próbujesz?

0

<button onclick="return sprawdz_formularz()"> Czy Poprawnie</button> za pomoca tego sprawdzam te 4 pola. Chce zrobić tak by zostawic te sprawdzanie dla tych czterech pół,a także przeniesc to <form action="mailto:[email protected]" method="post" enctype="text/plain"> </form> by łapało mi całość formularza do maila.
Bo kazda proba przeniesienia tego na gore by lapalo calosc nadpisuje mi ten przycisk co ma sprawdzac i zamiast sprawdzac tez wysyla maila....

0

powiedziałem - bez kodu i technicznych rzeczy.

po ludzku:
chcesz sprawdzić poprawność formularza, a jeżeli jest poprawny - puścić całość do mailto ?

0

No tak tez moze byc :)

1

a dlaczego nie po prostu:

<form name=formularz action="mailto:[email protected]" onsubmit="return sprawdz();">
    <input type="text" name="test" value="" />
    <input type="submit" value="wyślij" />
</form>
    sprawdz = function() {
        var imie = document.forms.formularz.test;
        var err = '';
        if (!imie.value.length) {
            err += "wpisz imie!";
        }
        if (err) {
            alert(err); return false;
        }
        return true;
    };

1 użytkowników online, w tym zalogowanych: 0, gości: 1