Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Edytowanie rekordu w bazie ze strony..., Dodaje, usuwa ale nie edytuje tylko dodaje nowy...
kondziu9516
post
Post #1





Grupa: Zarejestrowani
Postów: 142
Pomógł: 1
Dołączył: 9.08.2011
Skąd: Bielsko Biała

Ostrzeżenie: (20%)
X----


Mam taki oto kod stronki:
Wszystko działa... Dodaje do bazy, usuwa, ale jak dam edit to wtedy wyświetlają się pola do edycji-> prawidłowo.
No i tu problem bo po edycji jak dam popraw to powinno poprawić a dodane nowy rekord do bazy.
Jak to zrobić?
Co źle napisane? Gdzie błąd?

  1. <?PHP
  2. ini_set( 'display_errors', 'Off' );
  3. error_reporting( E_ALL );
  4. ?>
  5.  
  6.  
  7. <form action="index.php" method="post">
  8. Imię:<br />
  9. <input type="text" name="imie" /><br />
  10. Nazwisko: <br />
  11. <input type="text" name="nazwisko" /><br />
  12. E-mail:<br />
  13. <input type="text" name="email" /><br />
  14. <input type="submit" value="dodaj" />
  15. </form>
  16.  
  17. <?php
  18. $imie = $_POST['imie'];
  19. $nazwisko = $_POST['nazwisko'];
  20. $email = $_POST['email'];
  21.  
  22. if($imie and $nazwisko and $email) {
  23.  
  24.  
  25. $connection = @mysql_connect("xxx", "xxx", "xxx")
  26. or die('Brak połączenia z serwerem MySQL');
  27. $db = @mysql_select_db('xxx', $connection)
  28. or die('Nie mogę połączyć się z bazą danych');
  29.  
  30.  
  31. $ins = @mysql_query("INSERT INTO uzytkownicy SET imie='$imie', nazwisko='$nazwisko', email='$email'");
  32.  
  33. if($ins) echo "Rekord został dodany poprawnie";
  34. else echo "Błąd nie udało się dodać nowego rekordu";
  35.  
  36. mysql_close($connection);
  37. }
  38.  
  39. ?>
  40.  
  41. <hr>
  42. <hr>
  43.  
  44. <?php
  45.  
  46. $connection = @mysql_connect("xxx", "xxx", "xxx")
  47. or die('Brak połączenia z serwerem MySQL');
  48. $db = @mysql_select_db('xxx', $connection)
  49. or die('Nie mogę połączyć się z bazą danych');
  50.  
  51.  
  52.  
  53. $wynik = mysql_query("SELECT * FROM uzytkownicy")
  54. or die('Błąd zapytania');
  55.  
  56.  
  57. if(mysql_num_rows($wynik) > 0) {
  58. echo "<table cellpadding=\"2\" border=1 width=410px>";
  59.  
  60. echo "<tr>";
  61. echo "<td width=10px>Id</td>";
  62. echo "<td width=100px>Imie</td>";
  63. echo "<td width=100px>Nazwisko</td>";
  64. echo "<td width=100px>E-mail</td>";
  65. echo "<td width=100px>Opcje</td>";
  66. echo "</tr>";
  67.  
  68.  
  69.  
  70. echo "<table cellpadding=\"2\" border=1 width=410px>";
  71. while($r = mysql_fetch_assoc($wynik)) {
  72.  
  73.  
  74.  
  75.  
  76. echo "<tr>";
  77. echo "<td width=10px>".$r['id']."</td>";
  78. echo "<td width=100px>".$r['imie']."</td>";
  79. echo "<td width=100px>".$r['nazwisko']."</td>";
  80. echo "<td width=100px>".$r['email']."</td>";
  81. echo "<td width=100px>
  82. <a href=\"index.php?a=del&amp;id={$r['id']}\">DEL</a>
  83. <a href=\"index.php?a=edit&amp;id={$r['id']}\">EDIT</a>
  84. </td>";
  85. echo "</tr>";
  86. }
  87. echo "</table>";
  88. }
  89.  
  90.  
  91. $a = trim($_GET['a']);
  92. $id = trim($_GET['id']);
  93.  
  94. if($a == 'del' and !empty($id)) {
  95.  
  96.  
  97. mysql_query("DELETE FROM uzytkownicy WHERE id='$id'")
  98. or die('Błąd zapytania: '.mysql_error());
  99.  
  100. echo 'Rekord został usunięty z bazy';
  101. }
  102.  
  103.  
  104.  
  105. $a = trim($_REQUEST['a']);
  106. $id = trim($_GET['id']);
  107.  
  108. if($a == 'edit' and !empty($id)) {
  109.  
  110. $wynik = mysql_query("SELECT * FROM uzytkownicy WHERE
  111. id='$id'")
  112. or die('Błądd zapytania');
  113.  
  114. if(mysql_num_rows($wynik) > 0) {
  115. $r = mysql_fetch_assoc($wynik);
  116.  
  117. echo '<form action="index.php" method="post">
  118. <input type="hidden" name="a" value="save" />
  119. <input type="hidden" name="id" value="'.$id.'" />
  120. imię:<br />
  121. <input type="text" name="imie"
  122. value="'.$r['imie'].'" /><br />
  123. nazwisko:<br />
  124. <input type="text" name="nazwisko"
  125. value="'.$r['nazwisko'].'" /><br />
  126. e-mail:<br />
  127. <input type="text" name="email"
  128. value="'.$r['email'].'" /><br />
  129. <input type="submit" value="popraw" />
  130. </form>';
  131. }
  132. }
  133. elseif($a == 'save') {
  134. $id = $_POST['id'];
  135. $imie = trim($_POST['imie']);
  136. $nazwisko = trim($_POST['nazwisko']);
  137. $email = trim($_POST['email']);
  138. mysql_query("UPDATE uzytkownicy SET imie = '$imie', nazwisko = '$nazwisko', email = '$email' WHERE id = '$id'") or die('Błąd zapytania');
  139. echo 'Dane zostały zaktualizowane';
  140. }
  141.  
  142. ?>


Domyślam się że dokładniej tu chodzi o ten kod:

  1.  
  2. echo '<form action="index.php" method="post">
  3. <input type="hidden" name="a" value="save" />
  4. <input type="hidden" name="id" value="'.$id.'" />
  5. imię:<br />
  6. <input type="text" name="imie"
  7. value="'.$r['imie'].'" /><br />
  8. nazwisko:<br />
  9. <input type="text" name="nazwisko"
  10. value="'.$r['nazwisko'].'" /><br />
  11. e-mail:<br />
  12. <input type="text" name="email"
  13. value="'.$r['email'].'" /><br />
  14. <input type="submit" value="popraw" />
  15. </form>';
  16. }
  17. }
  18. elseif($a == 'save') {
  19. $id = $_POST['id'];
  20. $imie = trim($_POST['imie']);
  21. $nazwisko = trim($_POST['nazwisko']);
  22. $email = trim($_POST['email']);
  23. mysql_query("UPDATE uzytkownicy SET imie = '$imie', nazwisko = '$nazwisko', email = '$email' WHERE id = '$id'") or die('Błąd zapytania');
  24. echo 'Dane zostały zaktualizowane';
  25. }


Ten post edytował kondziu9516 29.01.2012, 15:27:46
Go to the top of the page
+Quote Post

Posty w temacie
- kondziu9516   [MySQL][PHP] Edytowanie rekordu w bazie ze strony...   29.01.2012, 15:24:55
- - Lombi   Po edycji to tez jest spełnione [PHP] pobierz, pla...   29.01.2012, 15:38:39
- - kondziu9516   czyli co mam zmienić? Byle działało... ;( _______...   29.01.2012, 15:50:38
- - Lombi   Byle działało... super podejście. Przenieś to: [PH...   29.01.2012, 15:51:27
|- - kondziu9516   Cytat(Lombi @ 29.01.2012, 15:51:27 ) ...   29.01.2012, 16:01:21
- - Lombi   Zrób to po ludzku jak bozia przykazała. [PHP] pobi...   29.01.2012, 16:14:00
- - 17misiek09   hmm tak jakby to tak mialo wygladac chyba ze sie ...   29.01.2012, 22:31:33
|- - 17misiek09   yhh Loooombi ratuj!! a teraz? [PHP] pob...   29.01.2012, 23:34:30
- - kondziu9516   Niestety ale dalej jest coś nie tak bo zamiast akt...   29.01.2012, 22:36:18
- - 17misiek09   zmien linijki od 100 do 113: [PHP] pobierz, plain...   29.01.2012, 22:51:44
- - kondziu9516   hehe teraz wogóle nie dodaje ani nie aktualizuje.....   29.01.2012, 22:59:31
- - 17misiek09   and now?? [PHP] pobierz, plaintext <?PHPini_se...   29.01.2012, 23:02:40
- - kondziu9516   and now to wogole nawet nie da sie usunąć ani edyt...   29.01.2012, 23:04:42
- - IceManSpy   Czy nie łatwiej będzie zrobić tak jak zaproponował...   29.01.2012, 23:46:54
|- - 17misiek09   Cytat(IceManSpy @ 29.01.2012, 23:46:5...   29.01.2012, 23:52:31
|- - IceManSpy   Cytat(17misiek09 @ 29.01.2012, 23:52...   30.01.2012, 00:22:44
- - kondziu9516   A mógłbyś mi to na gotowo przerobić Byłbym bardzo ...   30.01.2012, 10:15:47
- - Lombi   Ale marudzisz Masz tu dokładny zarys tylko powsta...   30.01.2012, 11:19:23
- - kondziu9516   Byłbym wdzięczny jakby ktoś mi to przerobił bądź p...   30.01.2012, 20:23:46


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

 



RSS Aktualny czas: 28.09.2025 - 11:09