Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Formularz PHP i problemy z wieloma selectami, Problemy z polem select
Cuncello
post 5.08.2020, 20:50:17
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 5.08.2020

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


Witam, bardzo proszę o wskazówki. Problem problem polega na tym, że zwraca mi w wszystkich selectach pierwszą opcję z selecta "typ silnika". Pomimo wybrania innych opcji.
Drugi problem, w select "wyposazenie" zwraca mi tylko jedną wybraną opcję pomimo wybrania wielu.

Macie pomysły w czym problem? Pewnie coś głupiego zrobiłem...



  1. <form id="contact" action="sendmemail.php" method="post" enctype="multipart/form-data">
  2.  
  3. <fieldset id="field1">
  4. <select id="pole1" name="rodzaj_pojazdu[]" tabindex="1" required >
  5. <option value="osobowy">osobowy</option>
  6. <option value="dostawczy">dostawczy</option>
  7. <option value="ciarowy">ciężarowy</option>
  8.  
  9. </select>
  10.  
  11. <input placeholder="Marka" type="text" name="email" tabindex="2" required>
  12.  
  13. <input placeholder="model" type="text" name="subject" tabindex="3" required>
  14.  
  15. <input placeholder="Rok produkcji" type="text" name="rok_produkcji" tabindex="4" required>
  16.  
  17. <fieldset id="field2">
  18. <select id="pole2" name="typ_silnika[]" tabindex="5" required>
  19. <option value="typ-silnika" >Typ silnika</option>
  20. <option value="Benzyna">Benzyna</option>
  21. <option value="Diesel">Diesel</option>
  22.  
  23. </select>
  24.  
  25. <input placeholder="Pojemność silnika" type="text" name="poj_silnika" tabindex="6" required>
  26.  
  27. <input placeholder="Moc silnika" type="text" name="moc_silnika" tabindex="7" required>
  28.  
  29. <input placeholder="Przebieg" type="text" name="przebieg" tabindex="8" required>
  30.  
  31. <select id="choseone1" value="Skrzynia biegów" name="skrzynia_biegow[]" tabindex="9" required >
  32.  
  33. <option value="typ-silnika" selected="selected">Skrzynia biegów</option>
  34. <option value="Benzyna">Manualna</option>
  35. <option value="Diesel">Automatyczna</option>
  36.  
  37. </select>
  38.  
  39. <select id="choseone2" name="naped[]" tabindex="10" required >
  40.  
  41. <option value="typ-silnika" selected="selected">Przedni</option>
  42. <option value="Benzyna">Tył</option>
  43. <option value="Diesel">4x4</option>
  44.  
  45. </select>
  46.  
  47. <select id="choseone3" name="drugi_komplet_kol[]" tabindex="11" required>
  48.  
  49. <option value="typ-silnika" selected="selected">Tak</option>
  50. <option value="Benzyna">Nie</option>
  51.  
  52. </select>
  53.  
  54. <input placeholder="Lokalizacja pojazdu (miasto)" type="text" name="lokalizacja" tabindex="12" required>
  55.  
  56. <input placeholder="przegląd ważny do:" type="text" name="przeglad" tabindex="13" required>
  57.  
  58. <input placeholder="Łączna liczba włascicieli" type="text" name="liczba_wlascicieli" tabindex="14" required>
  59.  
  60. <textarea placeholder="Uwagi dotyczące stanu technicznego" name="message" tabindex="15" required></textarea>
  61.  
  62.  
  63. <span>Wyposażenie (CTRL+lewy przycisk myszy zaznacza kolejne opcje) *</span>
  64. <select id="choseone" class="option-select-custom" placeholder="Wyposażenie" name="wyposazenie[]" tabindex="16" multiple="multiple">
  65.  
  66. <option value="ABS">ABS</option>
  67. <option value="CD">CD</option>
  68. <option value="Centralny zamek">Centralny zamek</option>
  69.  
  70. </select>
  71.  
  72. <span>Dodaj zdjęcia (max 20 sztuk na jeden raz) *</span>
  73. <input id="upload" name="upload[]" type="file" multiple="multiple" />
  74.  
  75.  
  76. <input placeholder="Nr telefornu" type="text" name="tel" tabindex="17" required>
  77.  
  78.  
  79. <input placeholder="email" type="text" name="adres_emai" tabindex="18" required>
  80.  
  81. <textarea placeholder="UWAGI" name="message_uwagi" tabindex="19" required></textarea>
  82.  
  83. <button name="submit" type="submitd" id="contact-submit" data-submit="...Wysyłanie">Wyślij</button>
  84.  
  85.  
  86. </form>
  87.  



  1. <?php session_start();
  2. if(isset($_POST['submit'])) {
  3. $youremail = 'm.szkubiel@e-intermedia.pl';
  4. $fromsubject = 'Temat wiadomości';
  5. $name = $_POST['rodzaj_pojazdu'];
  6. $mail = $_POST['email'];
  7. $subject = $_POST['subject'];
  8. $message = $_POST['rok_produkcji'];
  9. $poj_silnika = $_POST['poj_silnika'];
  10. $moc_silnika = $_POST['moc_silnika'];
  11. $przebieg = $_POST['przebieg'];
  12. $lokalizacja = $_POST['lokalizacja'];
  13. $przeglad = $_POST['przeglad'];
  14. $liczba_wlascicieli = $_POST['liczba_wlascicieli'];
  15. $message = $_POST['message'];
  16. $tel = $_POST['tel'];
  17. $adres_emai = $_POST['adres_emai'];
  18. $message_uwagi = $_POST['message_uwagi'];
  19.  
  20. $typ_silnika = (isset($_POST['typ_silnika']));
  21. $skrzynia_biegow = (isset($_POST['skrzynia_biegow']));
  22. $naped = (isset($_POST['naped']));
  23. $drugi_komplet_kol = (isset($_POST['drugi_komplet_kol']));
  24. $wyposazenie = (isset($_POST['wyposazenie']));
  25.  
  26.  
  27. if(count($_FILES['upload']['name']) > 0){
  28.  
  29. $rand = rand();
  30.  
  31. $createFolder = uniqid();
  32. mkdir('uploads/'.$createFolder);
  33.  
  34. for($i=0; $i<count($_FILES['upload']['name']); $i++) {
  35.  
  36. $tmpFilePath = $_FILES['upload']['tmp_name'][$i];
  37.  
  38. if($tmpFilePath != ""){
  39.  
  40. $shortname = $_FILES['upload']['name'][$i];
  41. $explode = explode(".", $_FILES['upload']['name'][$i]);
  42. $filePath = "uploads/".$createFolder. '/' . rand().'.'.$explode[1];
  43.  
  44. if(move_uploaded_file($tmpFilePath, $filePath)) {
  45. $files[] = $shortname;
  46.  
  47. echo $filePath.'<hr>';
  48. }
  49. }
  50. }
  51.  
  52.  
  53. }
  54.  
  55. $to = $youremail;
  56. $headers = 'MIME-Version: 1.0' . "\r\n";
  57. $headers .= 'Content-type:text/html; charset=UTF-8' . "\r\n";
  58. $headers .= "From: ".$_POST['name']."<".$_POST['Email'].">\r\n";
  59. $headers .= "Reply-To: ".$_POST["email"]."\r\n";
  60.  
  61. $mailsubject = $fromsubject;
  62.  
  63. $body .= $fromsubject.'
  64.  
  65.  
  66. Rodzaj pojazdu: '.$name.'
  67. <br>
  68. <hr>
  69. Marka: '.$mail.'
  70. <br>
  71. <hr>
  72. Model: '.$subject.'
  73. <br>
  74. <hr>
  75. Rok produkcji: '.$message.'
  76. <br>
  77. <hr>
  78. Typ silnika: '.print_r($typ_silnika).'
  79. <br>
  80. <hr>
  81. Pojemność silnika: '.$poj_silnika.'
  82. <br>
  83. <hr>
  84. Moc silnika: '.$moc_silnika.'
  85. <br>
  86. <hr>
  87. Przebieg: '.$przebieg.'
  88. <br>
  89. <hr>
  90. Skrzynia biegów: '.$skrzynia_biegow.'
  91. <br>
  92. <hr>
  93. Napęd: '.print_r($naped).'
  94. <br>
  95. <hr>
  96. Drugi komplet kół: '.print_r($drugi_komplet_kol).'
  97. <br>
  98. <hr>
  99. Lokalizacja: '.$lokalizacja.'
  100. <br>
  101. <hr>
  102. Przegląd: '.$przeglad.'
  103. <br>
  104. <hr>
  105. Łączna liczba właścicieli'.$liczba_wlascicieli.'
  106. <br>
  107. <hr>
  108. Uwagi dotyczące stani technicznego'.$message.'
  109. <br>
  110. <hr>
  111. Wyposażenie: '.print_r($wyposazenie).'
  112. <br>
  113. <hr>
  114. Telefon: '.$tel.'
  115. <br>
  116. <hr>
  117. Adres e-mail: '.$adres_emai.'
  118. <br>
  119. <hr>
  120. UWAGI: '.$message_uwagi.'
  121. <br>
  122. <hr>
  123. <a href="https://fck-auto.de/form/galeria.php?upload=/'.$createFolder.'">test</a>
  124.  
  125. ';
  126.  
  127. echo "Thank you fo your feedback. I will contact you shortly if needed.<br/>Go to <a href='/index.php'>Home Page</a>";
  128. mail($to, $subject, $body,$headers);
  129. } else {
  130. echo "You must write a message. </br> Please go to <a href='/index.html'>Home Page</a>";
  131. }
  132. ?>


Ten post edytował Cuncello 5.08.2020, 20:53:23
Go to the top of the page
+Quote Post
trueblue
post 5.08.2020, 21:10:16
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

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


1. Dla <select> z jednokrotnym wyborem nie ma sensu nazwa tablicowa.
2. Sprawdź jakie są wartości atrybutów value w innych <select>.
3. Jeśli dodałeś atrybut required, to ma on sens przy ustawieniu pierwszej opcji bez atrybutu value.
4. Element <fieldset> stosuje się dla grupy pól (stąd nazwa), często w powiązaniu z elementem <legend>. U Ciebie brakuje <label>.


--------------------
Go to the top of the page
+Quote Post
gino
post 6.08.2020, 19:43:03
Post #3





Grupa: Zarejestrowani
Postów: 319
Pomógł: 52
Dołączył: 18.02.2008

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


Poza tym dla pola mailowego użyj typu email, wstępnie zrobi walidację poprawności wpisanego maila, zrób też obsługę wrzucania plików przez ten formularz, określ MIME plików jakie można wrzucić.

gino
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 29.03.2024 - 13:43