Od jakiegoś czasu siedzę nad takim tematem:
- na stronie są checkboxy do wyboru
- chcę mieć możliwość sprawdzenia ile checkboxów zaznaczyłem za pomocą przycisku lub aby ilość wybranych checkboxów wyświetlała się w czasie rzeczywistym gdzieś na stronie
- pole do wpisania dodatkowego komentarza
- i to wszystko żeby się wysyłało na maila bez udziału programu pocztowego
I szczerze powiem utknąłem. Albo ładnie zlicza i pokazuje ale wysyła tylko ostatni zaznaczony checkbox albo wysyła wszystko ładnie ale nie można sprawdzić ile zaznaczyłem checkboxów.
Coś tak to wygląda:
http://fotobracia.pl/wybierajka2.html
A oto kod, który do tej pory udało mi się skleić:
<?php if (count($_POST)) { ////////// USTAWIENIA ////////// $email = 'info@fotobracia.pl'; // Adres e-mail adresata $subject = 'temat'; // Temat listu $message = 'Dziękujemy za wysłanie formularza'; // Komunikat $error = 'Wystąpił błąd podczas wysyłania formularza'; // Komunikat błędu $charset = 'iso-8859-2'; // Strona kodowa ////////////////////////////// $head = "MIME-Version: 1.0\r\n" . "Content-Type: text/plain; charset=$charset\r\n" . "Content-Transfer-Encoding: 8bit"; $body = ''; foreach ($_POST as $name => $value) { if (is_array($value)) { for ($i = 0; $i < count($value); $i++) { $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value[$i]) : $value[$i]) . "\r\n"; } } else $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "\r\n"; } echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error; } else { ?> <form action="?" method="post"> <div> <!-- Pole typu RADIO --> <!-- Pole typu CHECKBOX --> <br> <div id="img_area"><!--BEGIN img_area--> <hr/> <br> <div id="text_field"><!--BEGIN text_field--> </div> <div id="img_field"><!--BEGIN img_field--> </div> </div> <div id="img_area"><!--BEGIN img_area--> <hr/> <br> <div id="text_field"><!--BEGIN text_field--> </div> <div id="img_field"><!--BEGIN img_field--> </div> </div> <div id="img_area"><!--BEGIN img_area--> <hr/> <br> <div id="text_field"><!--BEGIN text_field--> </div> <div id="img_field"><!--BEGIN img_field--> </div> </div> <div id="img_area"><!--BEGIN img_area--> <hr/> <br> <div id="text_field"><!--BEGIN text_field--> </div> <div id="img_field"><!--BEGIN img_field--> </div> </div> <div id="img_area"><!--BEGIN img_area--> <hr/> <br> <div id="text_field"><!--BEGIN text_field--> </div> <div id="img_field"><!--BEGIN img_field--> </div> </div> <div id="img_area"><!--BEGIN img_area--> <hr/> <br> <div id="text_field"><!--BEGIN text_field--> </div> <div id="img_field"><!--BEGIN img_field--> </div> </div> <script type="text/javascript"> function sprawdz() { var ileZaznaczonych = 0; var forma = this.form; var obiektyCheck = forma.Foto; for (x=0; x<obiektyCheck.length; x++) { if (obiektyCheck[x].checked) ileZaznaczonych++ } alert('Liczba wybranych zdjęć (w pakiecie 40 szt.): ' +ileZaznaczonych+ ' '); } document.getElementById('spr').onclick = sprawdz; </script> <div id="img_area"><!--BEGIN img_area--> <!-- Pole komentarza (o powiększonych rozmiarach oraz z tekstem domyślnym) --> <div> <input type="button" value="Sprawdź ile zdjęć wybrałeś" id="spr" /> </div> <!-- Przycisk WYŚLIJ --> <input type="submit" value="Wyślij formularz" /> <!-- Przycisk WYCZYŚĆ DANE --> <input type="reset" value="Wyczyść dane" /> </div> </div> </form> <?php } ?>
Proszę o pomoc