Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Problem z wysyłaniem formularza w php
Forum PHP.pl > Forum > Przedszkole
Marekzphp
Witam z tej strony Marek pierwszy rok w php w szkole informatycznej, problem polega na tym, że kiedy odświeżam stronę, puste dane wysyłają się do bazy danych. Powoduje to natłok pustych wierszy w bazie. Dopiero zaczynam przygodę z php i nie potrafię sobie z tym poradzić :/
  1. <div class="formularz">
  2. <p><b>Wypełnij formularz!</b><p>
  3. <form action="" method="post">
  4. Podaj imię</br>
  5. <input type='text' name='Imie'></br>
  6. Podaj nazwisko</br>
  7. <input type='text' name='Nazwisko'></br>
  8. Podaj datę urodzenia</br>
  9. <input type='date' name='Data_urodzenia'></br>
  10. Podaj ulicę</br>
  11. <input type='text' name='Ulica'> </br>
  12. Podaj nr domu</br>
  13. <input name='Nr_domu'> </br>
  14. Podaj nr lokalu</br>
  15. <input name='Nr_lokalu'> </br>
  16. Podaj kod pocztowy</br>
  17. <input name='Kod_pocztowy' placeholder="58-300"> </br>
  18. Podaj miejscowość</br>
  19. <input type="text" name='Miejscowosc'> </br>
  20. Podaj płeć:</br>
  21. <input type='radio' name='Plec' value="m"> M</br>
  22. <input type='radio' name='Plec' value="f"> K</br>
  23. Nazwa<br>
  24. <input type="text" name='Nazwa'> </br>
  25. Podaj telefon</br>
  26. <input type="text" name='Telefon'> </br>
  27. Podaj stronę www</br>
  28. <input name='strona_www' placeholder="onet.pl"> </br>
  29. Publiczne?</br>
  30. <input type='radio' name='Publiczne' value="1"> TAK</br>
  31. <input type='radio' name='Publiczne' value="0"> NIE</br>
  32. <input type='submit' value='Wyślij'>
  33. </form>
  34. </div>
  35. </div>
  36. <?php
  37.  
  38. if (IsSet($_POST["Imie"]))
  39. { $Imie=$_POST["Imie"];
  40. $Nazwisko=$_POST["Nazwisko"];
  41. $Data_urodzenia=$_POST["Data_urodzenia"];
  42. $Ulica=$_POST["Ulica"];
  43. $Nr_domu=$_POST["Nr_domu"];
  44. $Nr_lokalu=$_POST["Nr_lokalu"];
  45. $Kod_pocztowy=$_POST["Kod_pocztowy"];
  46. $Miejscowosc=$_POST["Miejscowosc"];
  47. $Plec=$_POST["Plec"];
  48. $Nazwa=$_POST["Nazwa"];
  49. $Telefon=$_POST["Telefon"];
  50. $strona_www=$_POST["strona_www"];
  51. $Publiczne=$_POST["Publiczne"];
  52.  
  53. }
  54.  
  55. else
  56. {
  57. $_POST["Imie"]=" ";
  58. $_POST["Nazwisko"]=" ";
  59. $_POST["Data_urodzenia"]=" ";
  60. $_POST["Ulica"]=" ";
  61. $_POST["Nr_domu"]=" ";
  62. $_POST["Nr_lokalu"]=" ";
  63. $_POST["Kod_pocztowy"]=" ";
  64. $_POST["Miejscowosc"]=" ";
  65. $_POST["Plec"]=" ";
  66. $_POST["Nazwa"]=" ";
  67. $_POST["Telefon"]=" ";
  68. $_POST["strona_www"]=" ";
  69. $_POST["Publiczne"]=" ";
  70. $Imie=$_POST["Imie"];
  71. $Nazwisko=$_POST["Nazwisko"];
  72. $Data_urodzenia=$_POST["Data_urodzenia"];
  73. $Ulica=$_POST["Ulica"];
  74. $Nr_domu=$_POST["Nr_domu"];
  75. $Nr_lokalu=$_POST["Nr_lokalu"];
  76. $Kod_pocztowy=$_POST["Kod_pocztowy"];
  77. $Miejscowosc=$_POST["Miejscowosc"];
  78. $Plec=$_POST["Plec"];
  79. $Nazwa=$_POST["Nazwa"];
  80. $Telefon=$_POST["Telefon"];
  81. $strona_www=$_POST["strona_www"];
  82. $Publiczne=$_POST["Publiczne"];
  83. }
  84.  
  85. $ser=mysql_connect('localhost','root');
  86. if (!$ser)
  87. {echo "Nie udało się połączyć z serwerem";}
  88. else
  89. {
  90. $bd=mysql_select_db("hanskloss");
  91. mysql_query('SET NAMES utf8');
  92. if (!$bd)
  93. {echo "Nie udało się otworzyć bazy danych";}
  94. else
  95. {
  96.  
  97. $kwerenda_1="INSERT INTO `szarik` VALUES ('$Imie','$Nazwisko','$Data_urodzenia','$Ulica','$Nr_domu','$Nr_lokalu','$Kod_pocztowy','$Miejscowosc','$Plec');";
  98. $kwerenda_2="INSERT INTO `gustlik` VALUES ('$Nazwa','$Miejscowosc','$Telefon','$strona_www','$Publiczne');";
  99. $wysyłka= mysql_query($kwerenda_1);
  100. if (!$wysyłka)
  101. {
  102. echo "Nie udało się wysłać danych do bazy";
  103.  
  104. }
  105. $wysyłka_1= mysql_query($kwerenda_2);
  106. if (!$wysyłka_1)
  107. {
  108. echo " Nie udało się wysłać danych do bazy";
  109.  
  110. }
  111. mysql_close($ser);
  112. }
  113. }
  114.  
  115.  
  116. ?>
Kshyhoo
Witamy na Forum. Przenoszę do odpowiedniego działu.
nospor
Moze napisz jeszcze raz, tym razem po polsku, w czym problem smile.gif
Marekzphp
Dokonałem edycji posta smile.gif
nospor
Bo dane do bazy wkladasz niezaleznie czy form zostal wyslany czy nie.

Nie sadzisz ze dane do bazy trzeba wkladac dopiero jak form zostanie wyslany?
A czy form zostal wyslany to masz sprawdzane o tutaj
if (IsSet($_POST["Imie"]))
Kshyhoo
Używaj wyszukiwarki zanim założysz nowy wątek. Google
nospor
@Kshyhoo tu nie chodzi o takie odswiezenie o ktorym myslisz... Jakby to bylo to, to by nie szly puste dane wink.gif
Kshyhoo
Ja myślę, że właśnie o to chodzi. Czy wchodzą puste dane, czy po odświeżeniu, zabezpieczenie jest podobne... a wyniki z Google, które podałem właśnie to zawierają.
nospor
To nie to. To sa dwie rozne rzeczy. W tej chwili autor ma problem z wkladaniem danych nawet jak wejdzie na strone pierwszy raz bez zadnego odsiezenia. Spojrz na kod.
Kshyhoo
Wystarczy zwykły IF, a w wynikach są przykłady poprawnej budowy formularza. Jeżeli się upierasz, to proszę:
  1. if (warunki) {
  2. echo "wysłano";
  3. } else {
  4. // kod formularza
  5. }
nospor
Do problemy ktory mamy obecnie tutaj wystarczy to co pisalem wczesniej czyli
if (IsSet($_POST["Imie"]))

Blad z duplikacja danych o ktorym ty mowisz to zupelnie inna bajka i owszem, wypada rowniez go miec na uwadze. Ale to dopiero jak autor opanuje ten "skomplikowany" problem jaki ma aktualnie. Nauka na zasadzie malych kroczkow.
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.