Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Zapisywanie danych po akceptacji
Forum PHP.pl > Forum > Przedszkole
polo36
Witam zrobiłem formularz gdzie ludzie wpisuja dane i wszystko jest oki zrobiłem tez strone gdzie sa wyswietlane dane z formularza w tabeli i to tez działa jak nalezy.
Problem moj zaczoł się w momencie gdy chciałem zrobic pod tą cała tabelką przycisk "Akceptuj" po nacisnieciu ktorego wszystkie wyzej wymienione zmienne - Dane zapisane zostaly by w bazie danych mysql.
Czy ktos mógł by mi podpowiedziec jak takie cos zrobic dodam ze dopiero zaczynam zabawe z mysql i php

Pozdrawiam Mariusz
r4xz
1.odczytujesz zmienne (przez GET lub POST - zależy jak zrobiłaś)

2.łączysz się z bazą danych

3.dodajesz dane do bazy [ mysql_query("INSERT INTO tabela VALUES(wartosc1, wartosc2, ...)") ]

4. kończysz połączenie

5.the end winksmiley.jpg

polo36
niby tak ale przed dodaniem danych do bazy chce aby ludzie klikneli w przycisk dodaj dane
tak aby mogli wszystko na spokojnie sobie sprawdzic smile.gif o to mi tu wsumie najbardziej chodzi smile.gif
Kszyhuu
Nie wiem, czy o to chodzi, ale masz chyba na myśli submita z html:
  1. <form method="post" action="PLIK.php">
  2. <input type="text" name="NAZWA" size="10" class="input">
  3. <input type="test" name="NAZWA2" size="10" class="input">
  4. <input class="input" type="submit" name="submit" value="Dodaj dane">

I wtedy w php robisz mniej więcej tak:
  1. $nazwa = mysql_escape_string($_POST['NAZWA']);
  2. $nazwa2 = mysql_escape_string($_POST['NAZWA2']);
  3. mysql_query("INSERT INTO tabela VALUES('$nazwa', '$nazwa2')");

O to chodziło?
polo36
hmmm widze ze musze walnac kodem smile.gif mam formularz ktory dziala i wysyla dane.
Mam plik przetwarzajacy formularz:
informator2
  1. <head>
  2. </head>
  3. <body>
  4. <?
  5. $imie = $_POST['imie'];
  6. $nazwisko = $_POST['nazwisko'];
  7. $numertel = $_POST['numer'];
  8. $mail = $_POST['meil'];
  9. $dataimprezy = $_POST['dataimprezy'];
  10. $iloscosob = $_POST['iloscosob'];
  11. $ilossdzieci = $_POST['iloscdzieci'];
  12. $rodzajimprezy = $_POST['rodzajimprezy'];
  13. $pierszkurczaka = $_POST['pierszkurczaka'];
  14. $kotletschabowy = $_POST['kotletschabowy'];
  15. $mielone = $_POST['mielone'];
  16. $zeberka = $_POST['zeberka'];
  17. $udkazkurczaka = $_POST['udkazkurczaka'];
  18. $skrzydelka = $_POST['szkrzydelkazkurczaka'];
  19. $karczek1 = $_POST['karczekgrillowany'];
  20. $karczek2 = $_POST['karczekpieczeniowy'];
  21. $pieczeniowy = $_POST['pieczeniowy'];
  22. $grzybowy = $_POST['grzybowy'];
  23. $pieczarkowy = $_POST['pieczarkowy'];
  24. $smietanowy = $_POST['smietanowy'];
  25. $koperkowy = $_POST['koperkowy'];
  26. $serowy = $_POST['serowy'];
  27. ?>
  28. <table height="100%" cellpadding="0" border="2" cellspacing="0">
  29. <tr><table align="center" width="600" cellpadding="0" border="0" cellspacing="0">
  30. <tr>
  31. <td width="30%"><?=$imie ?>&nbsp;&nbsp;&nbsp;<?=$nazwisko ?><br /><?=$numertel ?><br /><a href="mailto:<?=$mail ?>"><?=$mail ?></a></td>
  32. <td width="30%">&nbsp;</td>
  33. <td width="40%">Data Zamowienia:<br />Data Imprezy:&nbsp;&nbsp;<?=$dataimprezy ?><br />Ilosc osob:&nbsp;&nbsp;<?=$iloscosob ?><br />Ilosc dzieci:&nbsp;&nbsp;<?=$iloscdzieci ?><br />Rodzaj Imprezy:&nbsp;&nbsp;<?=$rodzajimprezy ?></td>
  34. </tr>
  35. </table>
  36. </tr>
  37. <tr> <center><h2>Menu</h2> <br /><H4>Zupa:&nbsp;&nbsp;<?=$zupa ?></h4><br /><?=$_POST['a35']; ?>&nbsp;&nbsp;<?=$_POST['a36']; ?></center>
  38. <center> <table align="center" width="600" cellpadding="0" border="0" cellspacing="0">
  39. <tr> Wybrane miesa:
  40. <td><?=$pierszkurczaka ?></td>
  41. <td><?=$kotletschabowy ?></td>
  42. <td><?=$karczek2 ?></td>
  43. </tr>
  44. <tr>
  45. <td><?=$mielone ?></td>
  46. <td><?=$udkazkurczaka ?></td>
  47. <td><?=$karczek1 ?></td>
  48. </tr>
  49. <tr>
  50. <td><?=$zeberka ?></td>
  51. <td><?=$skrzydelka ?></td>
  52. </tr>
  53. </table></center>
  54. </tr>
  55. <br />
  56. <tr>
  57. <center> <table align="center" width="600" cellpadding="0" border="0" cellspacing="0">
  58. <tr> Wybrane Sosy:
  59. <td><?=$pieczeniowy ?></td>
  60. <td><?=$pieczarkowy ?></td>
  61. <td><?=$koperkowy ?></td>
  62. </tr>
  63. <tr>
  64. <td><?=$smietanowy ?></td>
  65. <td><?=$grzybowy ?></td>
  66. <td><?=$serowy ?></td>
  67. </tr>
  68. </table></center>
  69. </tr> <br />
  70. <tr>
  71. <center> <table align="center" width="600" cellpadding="0" border="0" cellspacing="0">
  72. <tr> Dodatki:
  73. <td><?=$_POST['frytki']; y ?></td>
  74. <td><?=$_POST['kluskislaskie']; ?></td>
  75. <td><?=$_POST['ziemniaki1']; y ?></td>
  76. </tr>
  77. <tr>
  78. <td><?=$_POST['ryz']; ?></td>
  79. <td><?=$_POST['kasza1']; ?></td>
  80. <td><?=$_POST['kasza2']; ?></td>
  81. </tr>
  82. <tr>
  83. <td><?=$_POST['ziemniaki2']; ?></td>
  84. <td><?=$_POST['ziemniaki3']; ?></td>
  85. <td><?=$_POST['ziemniaki4']; ?></td>
  86. </tr>
  87. <tr>
  88. <td><?=$_POST['pierogi2']; ?></td>
  89. <td><?=$_POST['pierogi3']; ?></td>
  90. <td><?=$_POST['pierogi1']; ?></td>
  91. </tr>
  92. <tr>
  93. <td><?=$_POST['pierogi4']; ?></td>
  94. <td><?=$_POST['kasza3']; ?></td>
  95. <td></td>
  96. </tr>
  97. </table></center>
  98. </tr> <br />
  99. <tr>
  100. <center> <table align="center" width="600" cellpadding="0" border="0" cellspacing="0">
  101. <tr> Surowki:
  102. <td><?=$_POST['a23']; ?></td>
  103. <td><?=$_POST['a24']; ?></td>
  104. <td><?=$_POST['a25']; ?></td>
  105. </tr>
  106. <tr>
  107. <td><?=$_POST['a26']; ?></td>
  108. <td><?=$_POST['a27']; ?></td>
  109. <td><?=$_POST['a28']; ?></td>
  110. </tr>
  111. <tr>
  112. <td><?=$_POST['a29']; ?></td>
  113. <td><?=$_POST['a30']; ?></td>
  114. <td><?=$_POST['a31']; ?></td>
  115. </tr>
  116. <tr>
  117. <td><?=$_POST['a32']; ?></td>
  118. <td><?=$_POST['a33']; ?></td>
  119. <td><?=$_POST['a34']; ?></td>
  120. </tr>
  121. </table></center>
  122. </tr> <br />
  123. <tr>
  124. <center> <table align="center" width="600" cellpadding="0" border="0" cellspacing="0">
  125. <tr> Sałatki:
  126. <td><?=$_POST['a41']; ?></td>
  127. <td><?=$_POST['a42']; ?></td>
  128. <td><?=$_POST['a43']; ?></td>
  129. </tr>
  130. <tr>
  131. <td><?=$_POST['a44']; ?></td>
  132. <td><?=$_POST['a45']; ?></td>
  133. <td><?=$_POST['a46']; ?></td>
  134. </tr>
  135. <tr>
  136. <td><?=$_POST['a47']; ?></td>
  137. <td><?=$_POST['a48']; ?></td>
  138. </tr>
  139. </table></center>
  140. </tr> <br />
  141. <tr>
  142. <center> <table align="center" width="600" cellpadding="0" border="0" cellspacing="0">
  143. <tr> Desery:
  144. <td><?=$_POST['a49']; ?></td>
  145. <td><?=$_POST['a50']; ?></td>
  146. <td><?=$_POST['a51']; ?></td>
  147. </tr>
  148. <tr>
  149. <td><?=$_POST['a52']; ?></td>
  150. <td><?=$_POST['a53']; ?></td>
  151. <td><?=$_POST['a54']; ?></td>
  152. </tr>
  153. <tr>
  154. <td><?=$_POST['a55']; ?></td>
  155. <td><?=$_POST['a56']; ?></td>
  156. </tr>
  157. </table></center>
  158. </tr> <br />
  159. <tr>
  160. <center> <table align="center" width="600" cellpadding="0" border="0" cellspacing="0">
  161. <tr> Informacje Dodatkowe:
  162. <td><?=$_POST['infododatkowe']; ?></td>
  163. </tr>
  164. </table></center>
  165. </tr>
  166. </table>
  167. // Tutaj chce aby byl przycisk po przycisnieciu ktorego miala by wykonac sie akcja ponizej tj zapisanie sie wszystkich w/w danych do bazy danych mysql.
  168. <?
  169. $gdzie = "informator";
  170. echo "$gdzie";
  171. if($naglowek) {
  172. $connection = @mysql_connect('****', '****', '****)
  173. or die('Brak połączenia z serwerem MySQL');
  174. $db = @mysql_select_db('***_cba_pl', $connection)
  175. or die('Nie mogę połączyć się z bazą danych');
  176. $ins = @mysql_query('INSERT INTO '.$gdzie.'
  177. SET imie="'.$imie.'", nazwisko="'.$nazwisko.'", mail="'.$mail.'", dataimprezy="'.$dataimprezy.'", ');
  178. $id = mysql_insert_id();
  179. if($ins) echo "News Dodany POPRAWNIE <br> Rekord o ID: $id </br>";
  180. else echo "Błąd nie udało się dodać nowego rekordu";
  181. mysql_close($connection);
  182. }
  183. else
  184. ?>
  185. <br /><br /><br />
  186. <center>Zapytanie wysłano<br /> potwierdzenie zostanie wysłane na podany adres emeil. </center>
  187. </body>
  188. </html>

Mam nadzieje ze teraz to bedzie bardziej zrozumiale smile.gif ze chce aby w miejscu
Kod
// Tutaj chce aby byl przycisk po przycisnieciu ktorego miala by wykonac sie akcja ponizej tj zapisanie sie wszystkich w/w danych do bazy danych mysql.

pojawil sie przycisk dla uzytkownika ktory po nacisnieciu go zapisze wszystkie dane do bazy danych smile.gif
r4xz
odpowiedzią na twoje pytanie jest post napisany przez Kszyhuu.

chyba że chcesz, aby strona nie była przeładowywana podczas zapisu do bazy danych to poczytaj o ajaxie winksmiley.jpg

darko
To może jeszcze w ogóle przed wysłaniem formularza walnąć onsubmit="return confirm_form();", gdzie
  1. function confirm_form() {
  2. return confirm("Czy na pewno zapisać te dane w bazie danych ?");
  3. }
polo36
wlasnie chce zeby to bylo po wyslaniu fomularza kiedy uzytkownik widzi tabele z danymi jakie wklepal i wybral i potwierdza ze chce je zapisac do bazy smile.gif a jezeli cos sie niezgadza ma mozliwosc poprawienia danych smile.gif
darko
Ok, a nie możesz po prostu (opcjonalnie zapisać tych danych do bazy), jeszcze raz pokazać formularz tym razem wypełniony wprowadzonymi danymi i umożliwić ponowny zapis (edycję) questionmark.gif
thomson89
1. rozpoczynasz sesje
2. każdą zmienną post, którą umieszczasz w tabeli wrzucasz do sesji
3. dajesz <a href="dodajdobazy.php"><input type="button" value="akceptuj"></a>
4. w pliku dodajdobazy.php:
-> łączysz z bazą
-> zapisujesz dane (masz je w sesjach!)
-> informujesz o wyniku
polo36
hmmmm motyw z sesja wydaje sie rozsadny smile.gif dzieki za porade teraz tylko jakas szybka nauka jak to zrobic najprosciej i lece ze skryptem dalej smile.gif
thomson89
No już ci napisałem jak najprościej.

  1. $imie = $_POST['imie'];
  2. $nazwisko = $_POST['nazwisko'];
  3. $numertel = $_POST['numer'];
  4. $mail = $_POST['meil'];
  5. //(...)
  6.  
  7. $_SESSION['imie'] = $_POST['imie'];
  8. //itd. (...)


  1. <a href="dodajdobazy.php"><input type="button" value="akceptuj"></a>


i w drugim pliku:
  1. //laczysz z baza
  2. //tworzysz zapytanie
  3. $query = 'INSERT INTO `tabela` (`pole1`, `pole2`) VALUES (\''.$_SESSION['imie'].'\', \''.$_SESSION['nazwisko'].'\');
  4. // wykonujesz mysql_query
  5. // sprawdzasz czy dodało
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.