Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] autoincrement
--marcek--
post
Post #1





Goście







witam
posiadam baze danych a wniej:

id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
imie CHAR(100) NOT NULL,
nazwisko CHAR(100) NOT NULL,
sad CHAR(100) NOT NULL,
zdnia CHAR(100) NOT NULL,
uwagi CHAR(255) NOT NULL

teraz posiadam plik php w ktorym dodaje kolejne pozycje i wszystko jest ok ale za kazdym razem musze wpisywac kolejny ID - czy moze to samo sie wpisywac?

moj plik.php

  1. <?
  2. $nhost="localhost";
  3. $nbaza="baza";
  4. $nuser="baza";
  5. $npassword="baza";
  6.  
  7. $skasuj = trim($_GET["skasuj"]);
  8. $popraw = trim($_GET["popraw"]);
  9. $id = trim($_GET["id"]);
  10. $imie = trim($_GET["imie"]);
  11. $nazwisko = trim($_GET["nazwisko"]);
  12. $sad = trim($_GET["sad"]);
  13. $zdnia = trim($_GET["zdnia"]);
  14. $uwagi = trim($_GET["uwagi"]);
  15.  
  16.  
  17.  
  18.  
  19. if ((($skasuj<>"")or($popraw<>""))and($id=="")) {
  20.  
  21. // ### pobranie rekordu z tabeli oraz kasowanie
  22.  
  23. if ($popraw<>"") $nr=$popraw; else $nr=$skasuj;
  24. $baza = mysql_connect($nhost, $nuser, $npassword);
  25. if ($baza) {
  26. $wynik = mysql_select_db($nbaza,$baza);
  27. if ($wynik) {
  28. $wynik = mysql_query("SELECT * FROM spadkiso WHERE id=$nr", $baza);
  29. if (($wynik)and(mysql_num_rows($wynik)>0)) {
  30. if ($skasuj<>"") {
  31. mysql_query("DELETE FROM spadkiso WHERE id=$skasuj", $baza);
  32. echo "<b>Rekord skasowany:</b>";
  33. }
  34. $pole=mysql_fetch_array($wynik);
  35. $id = $pole["id"];
  36. $imie = $pole["imie"];
  37. $nazwisko = $pole["nazwisko"];
  38. $sad = $pole["sad"];
  39. $zdnia = $pole["zdnia"];
  40. $uwagi = $pole["uwagi"];
  41. }
  42. }
  43. mysql_close($baza);
  44. }
  45. } else if ($id<>"") {
  46.  
  47. // ### dopisanie lub uaktualnienie tabeli
  48.  
  49. if (!eregi("^[0-9]+$",$id)) echo "<br><b>błąd w polu ID:</b>";
  50.  
  51.  
  52. else {
  53.  
  54. $baza = mysql_connect($nhost, $nuser, $npassword);
  55. if ($baza) {
  56. $wynik = mysql_select_db($nbaza,$baza);
  57. if ($wynik) {
  58. if ($popraw=="") {
  59. $wynik = mysql_query("
  60. INSERT INTO spadkiso VALUES($id,'$imie','$nazwisko','$sad','$zdnia','$uwagi')
  61. ", $baza);
  62. if ($wynik) {
  63. echo "<br><b>Rekord został dodany</b>";
  64. $id=""; $imie=""; $nazwisko=""; $sad=""; $zdnia=""; $uwagi="";
  65. }
  66. } else {
  67. $wynik = mysql_query("
  68. UPDATE spadkiso SET id=$id, imie='$imie',
  69. nazwisko='$nazwisko', sad='$sad', zdnia='$zdnia', uwagi='$uwagi' where id=$popraw
  70. ", $baza);
  71. if ($wynik) {
  72. echo "<br><b>Rekord został uaktualniony</b>"; $popraw="";
  73. $id=""; $imie=""; $nazwisko=""; $sad=""; $zdnia=""; $uwagi="";
  74. }
  75. }
  76. }
  77. mysql_close($baza);
  78. }
  79.  
  80. }
  81. }
  82.  
  83. // ### napis na guziku formularza
  84.  
  85. if ($popraw<>"") $guzik="Uaktualnij";
  86. else if ($skasuj<>"") $guzik="Przywróć";
  87. else { $guzik="Dodaj"; };
  88.  
  89. // ### formularze
  90.  
  91. $fimie = htmlspecialchars(stripslashes($imie));
  92. $fnazwisko = htmlspecialchars(stripslashes($nazwisko));
  93.  
  94. $formularze = <<<KONIEC
  95.  
  96. <table border=0><tr><td valign=top>
  97. <form action="admin.php" method="get">
  98. <input type="hidden" name="popraw" value="$popraw">
  99. <table><tr>
  100.   <td valign=top>ID:</td>
  101.   <td><input type="text" name="id" value="$id"></td>
  102. </tr><tr>
  103.   <td valign=top>imie:</td>
  104.   <td><input type="text" name="imie" value="$imie"></td>
  105. </tr><tr>
  106.   <td valign=top>nazwisko:</td>
  107.   <td><input type="text" name="nazwisko" value="$nazwisko"></td>
  108. </tr><tr>
  109.   <td valign=top>sad:</td>
  110.   <td><input type="text" name="sad" value="$sad"></td>
  111. </tr><tr>
  112.   <td valign=top>z dnia:</td>
  113.   <td><input type="text" name="zdnia" value="$zdnia"></td>
  114. </tr><tr>
  115.   <td valign=top>uwagi:</td>
  116.   <td><input type="text" name="uwagi" value="$uwagi"></td>
  117. </tr><tr>
  118. <td>&nbsp;</td>
  119. <td><input type="submit" value=" $guzik "></td>
  120. </tr></table>
  121. </form>
  122.  
  123. </td><td valign=top>
  124.  
  125. <form action="admin.php" method="get">
  126. <table bgcolor=#ccccff><tr>
  127.   <td valign=top>ID:</td>
  128.   <td><input type="text" name="popraw"></td>
  129. </tr><tr>
  130. <td>&nbsp;</td>
  131. <td><input type="submit" value=" uaktualnij "></td>
  132. </tr></table>
  133. </form>
  134.  
  135. <form action="admin.php" method="get">
  136. <table bgcolor=#ffcccc><tr>
  137.   <td valign=top>ID:</td>
  138.   <td><input type="text" name="skasuj"></td>
  139. </tr><tr>
  140. <td>&nbsp;</td>
  141. <td><input type="submit" value=" skasuj "></td>
  142. </tr></table>
  143. </form>
  144.  
  145. </td></tr></table>
  146. KONIEC;
  147.  
  148. echo $formularze;
  149.  
  150. // ### pomocniczy fragment, wypisuje dane z bazy na ekran
  151.  
  152. echo "<hr>";
  153. $baza = mysql_connect($nhost, $nuser, $npassword);
  154. mysql_select_db($nbaza,$baza);
  155. $wynik = mysql_query("SELECT * FROM spadkiso",$baza);
  156. mysql_close($baza);
  157. $wierszy = mysql_num_rows($wynik);
  158. $pol = mysql_num_fields($wynik);
  159. echo "<table cellpadding=0 cellspacing=1 border=1><tr>
  160. <td><b>id</b></td><td><b>imie</b></td><td><b>nazwisko</b></td>
  161. <td><b>sad</b></td><td><b>z dnia</b></td><td><b>uwagi</b></td></tr>";
  162. for ($i=0;$i<$wierszy;$i++) {
  163. $wiersz = mysql_fetch_row($wynik);
  164. echo "<tr>";
  165. for ($j=0;$j<$pol;$j++) echo "<td>".$wiersz[$j]."</td>";
  166. echo "</tr>";
  167. }
  168. echo "</table>";
  169. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Wstawiaj NULL, zamist konkretnego id....

nie: INSERT INTO spadkiso VALUES($id,'$imie','$nazwisko','$sad','$zdnia','$uwagi')
a: INSERT INTO spadkiso VALUES(null,'$imie','$nazwisko','$sad','$zdnia','$uwagi')


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
--marcek--
post
Post #3





Goście







fakt teraz po tej zamianie cokolwiek bym nie wpisal czy 1 czy 4 czy nawet 100 on sam wpisuje kolejna liczbe ale jesli zostawie puste czyli tak jak bym chcial to niestety nie dodaje sad.gif
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Pisałeś choć linijkę tego kodu?

Sam dales warunek, że dodajesz dopiero wtedy, gdy podasz id:
else if ($id<>"")
więc się nie dziw, ze jak nie podasz ID to się nic nie dodaje....


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
--marcek--
post
Post #5





Goście







to prawda ze sam niewiele napisalem tego kodu, wszystko znalalem na roznych forach polaczylem, na poczatku nie dzialalo ale czytalem czytalem i przeznam ze jestem z tego dumny sam zrobilem ze dziala przeznam tez ze nie do konca wszystko rozumiem ale teraz coraz wiecej umiem, i tak naprawde to moj 1 post dotyczacy tego skrypciku, wiem ze moze wnerwiac moja niewiedza ludzi ktorzy znaja to ale ja mamnadzieje tez sie kiedys znac...
a tyczasem ...


fakt jest else if ($id<>"")

czyli jezeli w tym miejscu poszukam jakiegos innego rozwiazania bedzie mi sie dodawalo samo?
pozdrawiam i dziekuje za baardzo szybkie odpowiedzi
Go to the top of the page
+Quote Post
--marcek--
post
Post #6





Goście







niestety nie moge nic znalesc co mam tam wpisac, czy wiecie co wpisac aby ruszylo?
dzieki
Go to the top of the page
+Quote Post
--marcek--
post
Post #7





Goście







jak to wywale calkiem to przestaje plik dzialac wiec musze cos zmienic - pomozcie prosze
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 Aktualny czas: 19.08.2025 - 10:55