Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP]Podwójny checkbox, Problem z wysyłką formularza
senior.pol
post
Post #1





Grupa: Zarejestrowani
Postów: 158
Pomógł: 0
Dołączył: 10.08.2011

Ostrzeżenie: (0%)
-----


Witam,

Mam formularz rezerwacji z m.in. dwoma polami checkbox. Wszystko fajnie śmiga, ale problem stanowi wysyłka wartości tych pól. Gdy np. jeden jest zaznaczony, a drugi nie to wysyła z obu pól wartość tego zaznaczonego. Jak rozwiązać ten problem (IMG:style_emoticons/default/co_jest.gif)

  1. $regulamin = isset($_POST['regulamin']) ? 'Tak' : 'Nie';
  2. $zgoda = isset($_POST['zgoda']) ? 'Tak' : 'Nie';


  1. <div class="checkbox">
  2. <label for="regulamin">
  3. <input type="checkbox" checked="checked" class="form-control-regulamin" id="regulamin" name="regulamin">Akceptuję regulamin uczestnictwa *
  4. </div>
  5. <div class="checkbox">
  6. <label for="zgoda">
  7. <input type="checkbox" checked="checked" class="form-control-zgoda" id="zgoda" name="zgoda">Zgadzam się na przetwarzanie moich danych w procesie rezerwacji *
  8. </div>


Ten post edytował senior.pol 2.03.2015, 00:33:01
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
SmokAnalog
post
Post #2





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Pokaż cały formularz i cały skrypt PHP, gdzie testujesz te wartości.
Go to the top of the page
+Quote Post
senior.pol
post
Post #3





Grupa: Zarejestrowani
Postów: 158
Pomógł: 0
Dołączył: 10.08.2011

Ostrzeżenie: (0%)
-----


Cytat(SmokAnalog @ 2.03.2015, 15:42:05 ) *
Pokaż cały formularz i cały skrypt PHP, gdzie testujesz te wartości.

  1. <?php
  2.  
  3. if(!$_POST) exit;
  4.  
  5. if (!defined("PHP_EOL")) define("PHP_EOL", "\r\n");
  6.  
  7. $regulamin = isset($_POST['regulamin']) ? 'Tak' : 'Nie';
  8. $zgoda = isset($_POST['zgoda']) ? 'Tak' : 'Nie';
  9.  
  10. $address = "xxx@xxx.pl";
  11.  
  12. $e_body = "$imie $nazwisko\n\nDane adresowe: $adres, $kod $miasto\nLiczba miejsc rezerwowanych: $liczba\nAkceptuję regulamin uczestnictwa: $regulamin\nZgadzam się na przetwarzanie danych w procesie rezerwacji: $zgoda\n";
  13.  
  14. $msg = wordwrap( $e_body . $e_content . $e_reply, 70 );
  15.  
  16. $headers = "From: $email" . PHP_EOL;
  17. $headers .= "Reply-To: $email" . PHP_EOL;
  18. $headers .= "MIME-Version: 1.0" . PHP_EOL;
  19. $headers .= "Content-type: text/plain; charset=utf-8" . PHP_EOL;
  20. $headers .= "Content-Transfer-Encoding: quoted-printable" . PHP_EOL;
  21.  
  22. if(mail($address, $e_subject, $msg, $headers)) {
  23.  
  24. echo '<div class="pi-alert-success fade in"><button type="button" class="pi-close" data-dismiss="alert"><i class="icon-cancel"></i></button><p><strong>Gratulacje!</strong> Instrukcję finalizacji rezerwacji otrzymasz w oddzielnej wiadomości e-mail.</p></div>';
  25.  
  26. } else {
  27.  
  28. echo 'ERROR!';
  29.  
  30. }
  31. ?>
  32.  

  1. <form role="form" action="rezerwacja.php" class="pi-contact-form" method="post">
  2. <div class="checkbox">
  3. <label for="regulamin">
  4. <input type="checkbox" checked="checked" class="form-control-regulamin" id="regulamin" name="regulamin">Akceptuję regulamin uczestnictwa *
  5. </label>
  6. </div>
  7. <div class="checkbox">
  8. <label for="zgoda">
  9. <input type="checkbox" checked="checked" class="form-control-zgoda" id="zgoda" name="zgoda">Zgadzam się na przetwarzanie moich danych w procesie rezerwacji *
  10. </label>
  11. </div>
  12. <div class="pi-error-container"></div>
  13. <p>
  14. <button class="btn pi-btn-base pi-btn-wide pi-uppercase pi-weight-700 pi-letter-spacing">
  15. Rezerwuję miejsce <i class="icon-check pi-icon-left"></i>
  16. </button>
  17. </p>
  18. </form>

Kod
jQuery(function($){
    $('.pi-contact-form').submit(function(){

        var $form = $(this),
            $error = $form.find('.pi-error-container'),
            action  = $form.attr('action');

        $error.slideUp(750, function() {
            $error.hide();

            var
                $regulamin = $form.find('.form-control-regulamin'),
                $zgoda = $form.find('.form-control-zgoda'),

            $.post(action, {
                    regulamin: $regulamin.val(),
                    zgoda: $zgoda.val(),
                },
                function(data){
                    $error.html(data);
                    $error.slideDown('slow');

                    if (data.match('success') != null) {
                        $regulamin.val('');
                        $zgoda.val('');
                    }
                }
            );

        });

        return false;

    });

});


Ten post edytował senior.pol 2.03.2015, 17:50:40
Go to the top of the page
+Quote Post

Posty w temacie
- senior.pol   [HTML][PHP]Podwójny checkbox   2.03.2015, 00:32:23
- - tzm   ups, nie tu. sorki   2.03.2015, 00:39:33
- - SmokAnalog   Z formularzem jest wszystko w porządku, sprawdź do...   2.03.2015, 00:47:53
|- - senior.pol   Cytat(SmokAnalog @ 2.03.2015, 00:47:5...   2.03.2015, 14:59:10
- - SmokAnalog   Pokaż cały formularz i cały skrypt PHP, gdzie test...   2.03.2015, 15:42:05
|- - senior.pol   Cytat(SmokAnalog @ 2.03.2015, 15:42:0...   2.03.2015, 17:47:01
- - kamil_lk   Pobieranie statusu checkboxa (zamiast .val() użyj ...   2.03.2015, 19:51:21
|- - senior.pol   Cytat(kamil_lk @ 2.03.2015, 19:51:21 ...   2.03.2015, 20:59:57
- - SmokAnalog   Osobiście nie lubię w checkboxach tego, że w formu...   2.03.2015, 21:19:07
|- - senior.pol   Cytat(SmokAnalog @ 2.03.2015, 21:19:0...   2.03.2015, 21:24:25
- - SmokAnalog   Jeśli pominiemy walidację póki co, to wystarczy że...   2.03.2015, 21:27:23
|- - senior.pol   Cytat(SmokAnalog @ 2.03.2015, 21:27:2...   2.03.2015, 21:37:59
- - SmokAnalog   Bo dalej wysyłasz tak samo te wartości. Poprawiłem...   2.03.2015, 21:41:59
|- - senior.pol   Cytat(SmokAnalog @ 2.03.2015, 21:41:5...   2.03.2015, 21:52:08
- - SmokAnalog   To zdebugguj to. Zobacz czy te zmienne $zgoda...   2.03.2015, 21:54:07
|- - senior.pol   Cytat(SmokAnalog @ 2.03.2015, 21:54:0...   2.03.2015, 21:58:24
- - SmokAnalog   A gdzie masz ten skrypt podpięty?   2.03.2015, 22:16:01
|- - senior.pol   Cytat(SmokAnalog @ 2.03.2015, 22:16:0...   2.03.2015, 22:18:43
- - SmokAnalog   To co mogę doradzić to żebyś się nauczył debuggowa...   2.03.2015, 22:24:55


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 16:01