Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]Wysyłanie danych z checkboxa formularz > send.php > e-mail
Forum PHP.pl > Forum > Przedszkole
GregorCTR
Witam właśnie tworzę formularz kontaktowy i mam problem z wysłaniem danych po zaznaczeniu checkboxa.


Forlularz:
Kod
     <form action="send.php" method="post" enctype="multipart/form-data" onsubmit="return Valid(this)">
      <fieldset>
      <div style="background-color: #525252;"><div style="width: 300px; margin-left:140px; font-family: Impact; font-size:18px; color: #ffffff;">Formularz kontaktowy:</div></div>
      
      
      <div id="divform">
        <div id="err1" class="error_hidden">Popraw wymagane pole!</div>
        <label for="name">Imię i nazwisko:*</label>
        <input id="name" type="text" name="name" />
      </div><div style="height:4px;"></div>
      
      <div id="divform">
        <label for="hobby">hobby:</label>
        <input id="hobby" type="text" name="hobby" />
      </div><div style="height:4px;"></div>
      
      <div id="divform">
        <label for="gg">gg:</label>
        <input id="gg" type="text" name="gg" />
      </div><div style="height:4px;"></div>
      
      <div id="divform">
        <div id="err2" class="error_hidden">Wpisz lub popraw liczbę znaków!</div>
        <label for="mobile2">Telefon:*</label>
        <input id="mobile2" type="text" name="mobile2" maxlength="14" onKeyPress="return onlydec(event,'mobile2')"/>
      </div><div style="height:4px;"></div>
      
      <div id="divform">
        <div id="err3" class="error_hidden">Wprowadzono niepoprawny e-mail!</div>
        <label for="mail">E-mail:*</label>
        <input id="mail" type="text" name="mail" />
      </div><div style="height:4px;"></div>
      <div id="divform">
        <div id="err4" class="error_hidden">Popraw wymagane pole!</div>
        <label for="text">Wiadomość:*</label>
        <textarea id="text" name="text"></textarea>
      </div>
      <div style="background-color: #999999;">
        <div style="width: 300px; margin-left:140px; margin-bottom:10px; margin-top:10px; font-family: Impact; font-size:18px; color: #ffffff;">Zaznacz kategorie :</div>
      </div>
      <div id="c1">
      <label for="film">film:</label>
      <input type="checkbox" name="film" value="film" id="film" />
      </div>
      <div id="c2">
      <label for="muzyka">muzyka:</label>
      <input type="checkbox" name="muzyka" value="muzyka" id="muzyka" />
      </div>
      <div id="c3">
      <label for="sport">sport:</label>
      <input type="checkbox" name="sport" value="sport" id="sport" />
      </div>
      <div id="c4">
      <label for="inne">inne:</label>
      <input type="checkbox" name="inne" value="inne" onclick="document.getElementById('identyfikator').style.display = this.checked ? 'block' : 'none'; this.form.elements['inne_jakie'].disabled = !this.checked" />
      <div id="identyfikator" style="display: none">
      <div style="padding-left:0px">
          <label for="Inne_jakie">Wpisz jakie:</label>
          <input type="text" name="inne_jakie" value="inne_jakie" disabled="disabled" /></div>
      </div>
      </div>
      <div id="divform3">*) pola obowiązkowe</div>
      <div id="divform" class="center">
        <input type="submit" name="Submit" value="Wyślij wiadomość" />
      </div>
      </fieldset>
      </form>


send.php

Kod
     <?php
      $do = 'ktos@xxx-xxx.xxx';
      $od = $_POST['name'];
      $tel = $_POST['mobile2'];
      $txt = $_POST['text'];
      $mail = $_POST['mail'];
      $hobby = $_POST['hobby'];
      $gg = $_POST['gg'];
      $film = $_POST['tak'];
      $muzyka = $_POST['tak'];
      $sport = $_POST['tak'];
      $inne = $_POST['tak'];
      $inne_jakie = $_POST['tak'];
      
      $tresc = "Od:".$od."\n\n";
      $tresc .= "E-mail: ".$mail."\n\n";
      $tresc .= "Telefon: ".$tel."\n\n";
      $tresc .= "Hobby: ".$hobby."\n\n";
      $tresc .= "GG: ".$gg."\n\n";
      $tresc .= "Treść: ".$txt."\n\n";
      $tresc .= "Film: ".$film."\n\n";
      $tresc .= "Muzyka: ".$muzyka."\n\n";
      $tresc .= "Sport: ".$sport."\n\n";
      $tresc .= "Inne: ".$inne."\n\n";
      $tresc .= "Jakie: ".$inne_jakie."\n\n";
      @mail($do, 'Wiadomość ze strony www', $tresc, "MIME-Version: 1.0\r\n"."Content-type: text/plain; charset=utf-8\r\n"."From: $mail\r\n");
      header('Location: http://www.xxx-xxx.xxx/?page=ok');
      echo $tresc;
      ?>


No i wysyła mi się wszystko do checkboxów co muszę dopisać żeby otrzymywać informację w mailu o zaznaczonym checkboxsie z góry dziękuję za pomoc.
tomsi
Chyba w send.php

  1. <?php
  2. $film = $_POST['tak'];
  3.     $muzyka = $_POST['tak'];
  4.     $sport = $_POST['tak'];
  5.     $inne = $_POST['tak'];
  6.     $inne_jakie = $_POST['tak'];
  7. ?>


powinieneś dać zamiast tak dać nazwy z name, któe zdefiniowałeś przy checkboxie.

P.S. Aha i każdemu przy name daj wartość value taką jaka ma być wybierana.
GregorCTR
Wielkie dzięki gra i śpiewa guitar.gif zmieniłem value w formularzu na Tak a w send.php dodałem name jak mi poradzono dzięki temu dostaje maile z potwierdzeniem zaznaczenia chceckboxa w wformularzu w formie tekstu np.
Muzyka: Tak

jeszcze tylko wysyłka w postaci html i bedzie można to ładnie kopiować do excela.

wie ktoś jak to napisać wiem, że muszę zmienić Content-type: text/plain na text/html

ale gdzie powinienem wstawić kod html tabeli z poszczególnymi zmiennymi które mają się wyświetlać.
erix
Gdzie? Poszukaj na forum, było nieraz.

Zmieniasz content-type i tabelę wrzucasz do normalnego kodu HTML.
maniana7
Witam.
Czy mógłby mi ktoś podpowiedzieć czemu wyskakuje mi błąd:

Parse error: syntax error, unexpected '5' (T_LNUMBER), expecting variable (T_VARIABLE) or '$' in /..................................................................skrypt.php on line 8

Oto formularz:
Kod
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="pl">
<head>
  <meta content="text/html; charset=ISO-8859-2"
http-equiv="content-type">
  <title>Formularz</title>
</head>
<body style="background-image: url(tło.jpg);"
onload="scroll();return true;">
<fieldset class="" style="font-family: Arial;"><legend
align="center"><b>ANKIETA <br>
</b></legend>
<form action="skrypt.php" method="post">
  <div style="text-align: center;"><span
style="font-weight: bold;"><span
style="color: rgb(0, 0, 0);"></span></span><span
style="color: rgb(102, 0, 0);"><span
style="color: rgb(0, 0, 0);">twoja ulubiona liczba to:</span></span><span
style="font-weight: bold;"><br>
  <br>
  </span> </div>
  <div style="text-align: center;">
  <table
style="width: 120px; height: 120px; text-align: left; margin-left: auto; margin-right: auto;"
border="1" cellpadding="2" cellspacing="2">
    <tbody>
      <tr>
        <td style="vertical-align: top; width: 365px;"><small><span
style="font-weight: bold;"></span>

<input name="piątka" value="tak" type="checkbox">5<br>
<input name="siódemka" value="tak" type="checkbox">7<br>
<input name="jedenastka" value="tak" type="checkbox">11<br>
<input name="szóstki" value="tak" type="checkbox">666<br>
<input name="siódemeczki" value="tak" type="checkbox">7777777
        
<br style="font-weight: bold;">
        </small><small><span style="font-weight: bold;"></span></small>
        <span style="font-weight: bold;"><span
style="font-weight: bold;"><small><span
style="font-weight: bold;"> </span></small></span></span><span
style="font-weight: bold;"><span
style="font-weight: bold;"> </span></span></td>
      </tr>
    </tbody>
  </table>
  <span style="font-weight: bold;"><span
style="color: rgb(102, 0, 0);"></span></span></div>
  <div style="text-align: center;"><br>
wypełnij wszystkie pola<span style="font-weight: bold;"><span
style="font-weight: bold;"><br>
  </span></span><span style="font-weight: bold;"></span></div>
  <div style="text-align: center;"><br>
  <table
style="width: 400px; height: 150px; text-align: left; margin-left: auto; margin-right: auto;"
border="0" cellpadding="2" cellspacing="2">
    <tbody>
      <tr>
        <td>imię<br>
        </td>
        <td style="vertical-align: top;"><input
name="IMIĘ" size="45" type="text"><br>
        </td>
      </tr>
      <tr>
        <td style="vertical-align: top;">nazwisko<br>
        </td>
        <td style="vertical-align: top;"><input
name="NAZWISKO" size="45" type="text"><br>
        </td>
      </tr>
      <tr>
        <td style="vertical-align: top;">adres<br>
        </td>
        <td style="vertical-align: top;"><input
name="ADRES" size="45" type="text"><br>
        </td>
      </tr>
      <tr>
        <td style="vertical-align: top;">telefon<br>
        </td>
        <td style="vertical-align: top;"><input
name="TELEFON" size="45" type="text"><br>
        </td>
      </tr>
    </tbody>
  </table>
  <br>
  <div style="text-align: center; font-family: verdana;">wybrana
nagroda (wpisz: piłka lub skakanka)<span style="font-weight: bold;"><span
style="font-weight: bold;"><br>
  </span></span><span style="font-weight: bold;"></span></div>
  <table
style="width: 200px; height: 45px; text-align: left; margin-left: auto; margin-right: auto;"
border="0" cellpadding="2" cellspacing="2">
    <tbody>
      <tr>
        <td style="vertical-align: top;"><input
name="NAGRODA" size="25"><br>
        </td>
      </tr>
    </tbody>
  </table>
  <small style="color: rgb(102, 0, 0);"><span
style="font-weight: bold;"></span></small> <button
type="submit" name="wysylamy"><b>WY?LIJ</b>&nbsp;&nbsp;&nbsp;&nbsp;
  </button> &nbsp; &nbsp; <button type="reset"
name="resetujemy"><b>WYCZY?Ć</b></button> <br>
  </div>
</form>
</fieldset>
</body>
</html>


a to skrypt.php
Kod
<?php
      $do = 'mój adres@xxxxxxxx.pl';
      $od = $_POST['imię'];
      $od2 = $_POST['nazwisko'];
      $adres = $_POST['adres'];
      $telefon = $_POST['telefon'];
      $nagroda = $_POST['nagroda'];
      $5 = $_POST['piątka'];
      $7 = $_POST['siódemka'];
      $11 = $_POST['jedenastka'];
      $666 = $_POST['szóstki'];
      $7777777 = $_POST['siódemeczki'];
      
      $tresc = "Od:".$imię."\n\n";
      $tresc .= "Od2: ".$nazwisko."\n\n";
      $tresc .= "Telefon: ".$telefon."\n\n";
      $tresc .= "Nagroda: ".$nagroda."\n\n";
      $tresc .= "Treść: ".$txt."\n\n";
      $tresc .= "5: ".$5."\n\n";
      $tresc .= "7: ".$7."\n\n";
      $tresc .= "11: ".$11."\n\n";
      $tresc .= "666: ".$666."\n\n";
      $tresc .= "7777777: ".$7777777."\n\n";
      @mail($do, 'Ankieta', $tresc, "MIME-Version: 1.0\r\n"."Content-type: text/plain; charset=utf-8\r\n"."From: $mail\r\n");
      header('Location: http://www.................................../Dziekuję.html');
      echo $tresc;
      ?>


Serwer oczywiscie obsługuje php i mail. Poza tym wrzuciłem testowo formularz GregorCTR i działał.
Z góry dzięki!
viking
Poczytaj http://php.net/manual/en/language.variables.basics.php
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.