Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP][MySQL] Usuwanie rekordów z bazy, Jak wykonać skrypt usuwania?
-Usuwanie rekordów-
post
Post #1





Goście







Wykonałem stronkę która wyświetla prosta bazę danych leków z możliwością ich usunięcia za pomocą przycisku.
http://pics.tinypic.pl/i/00271/9iji7clvpz8g.jpg

Przycisk pobiera aktualne ID wiersza, po naciśnięciu przekierowuje póki co na pustą stronę.
http://files.tinypic.pl/i/00271/oxigjy7toy9m.jpg

Chce aby po przekierowaniu wyświetlało mi się pytanie o usunięcie danego rekordu z pobranym ID z poprzedniej strony. Do wyboru byłoby Tak usuń oraz nie, nie usuwaj lecz nie wiem gdzie dokładnie mam zamieścić kod do usuwania(na pierwszej stronie czy też na drugiej pustej). Projekt to mój własny pomysł na naukę PHP,MySQL i HTMLA 1.0 w jednym, dlatego proszę o wyrozumiałość i wyjaśnienie mi co musiałbym zrobić i wiedzieć.

Pierwsza strona z przedstawionych na zdjęciu. Posiada ona w sobie taki kod. Druga ze względu na brak pomysłu ,nie ma zapisanego skryptu.
  1. <?php
  2. ob_start(); error_reporting(E_ALL ^ E_NOTICE);
  3. include 'db.php'; // połączenie się z bazą danych
  4. $link = mysql_connect("localhost", "root", "x")or die("Could not connect");
  5. $mysql_baza = 'szpital';
  6. // połączenie ze schematem bazy danych
  7. mysql_select_db($mysql_baza) or die('Błąd: nie udało się wybrać schematu bazy danych.');
  8.  
  9. $pobierz = "SELECT * FROM lek";
  10. $wynik = mysql_query($pobierz) or die("Złe zapytanie");
  11. {
  12. echo '<tr >
  13. <td width="130px" height="10px"><b>ID Leku</b></td>
  14. <td width="130px" height="10px"><b>Nazwa leku</b></td>
  15. <td width="130px" height="10px"><b>Producent leku</b></td>
  16. <td width="130px" height="10px"><b>Cena leku</b></td>
  17. <td width="130px" height="10px"><b>Kupujacy</b></td>
  18. <td width="130px" height="10px"><b>Usuń lek:</b></td>
  19. </tr>';
  20. while ($row = mysql_fetch_array($wynik)) {
  21. echo "<tr>";
  22. echo "<td>$row[ID_lek]</td>";
  23. echo "<td>$row[Nazwa_lek]</td>";
  24. echo "<td>$row[Producent_lek]</td>";
  25. echo "<td>$row[Cena_lek]</td>";
  26. echo "<td>$row[Kupujacy_lek]</td>";
  27. echo "<td>
  28. <form action='usun.php' method='get'name='usun'>
  29. <input type='submit' name='pusun' value='\"".$row['ID_lek']."\"'/>
  30. </form>
  31. <td> ";
  32. }
  33. }
  34. mysql_close($link);
  35. ?>
  36. <?php
  37. if (isset($_GET['pusun'])) {
  38. header("location: usun1.php");
  39. exit();
  40. }
  41. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
-Usuwanie rekordów-
post
Post #2





Goście







Po tym co poradziłeś oraz przeróbce własnego kodu, zrezygnowałem ze przeniesienia pytania na kolejną stronę. Wyświetla się na tej samej lecz po zastosowaniu var_dump($GET) wyświetliło coś takiego: array(1) { ["pusun"]=> string(2) "10" } Chcesz usuną lek o ID 10? Tak | Nie , a następnie array(0) { } .


http://images.tinypic.pl/i/00272/2v8vtzpjmuqo.jpg
http://images.tinypic.pl/i/00272/14r1wu4b64ik.jpg

Skryptu do podglądu
  1. <?php
  2. ob_start(); error_reporting(E_ALL ^ E_NOTICE);
  3. include 'db.php'; // połączenie się z bazą danych
  4. $link = mysql_connect("localhost", "root", "x")or die("Could not connect");
  5. $mysql_baza = 'szpital';
  6. // połączenie ze schematem bazy danych
  7. mysql_select_db($mysql_baza) or die('Błąd: nie udało się wybrać schematu bazy danych.');
  8.  
  9. $pobierz = "SELECT * FROM lek"; //pobieranie danych
  10. $wynik = mysql_query($pobierz) or die("Złe zapytanie");
  11. { //wyświetlenie nazw kolumn
  12. echo '<tr >
  13. <td width="130px" height="10px"><b>ID Leku</b></td>
  14. <td width="130px" height="10px"><b>Nazwa leku</b></td>
  15. <td width="130px" height="10px"><b>Producent leku</b></td>
  16. <td width="130px" height="10px"><b>Cena leku</b></td>
  17. <td width="130px" height="10px"><b>Kupujacy</b></td>
  18. <td width="130px" height="10px"><b>Usuń lek:</b></td>
  19. </tr>';
  20. // pobieranie z bazy danych
  21. while ($row = mysql_fetch_array($wynik)) {
  22. echo "<tr>";
  23. echo "<td>$row[ID_lek]</td>";
  24. echo "<td>$row[Nazwa_lek]</td>";
  25. echo "<td>$row[Producent_lek]</td>";
  26. echo "<td>$row[Cena_lek]</td>";
  27. echo "<td>$row[Kupujacy_lek]</td>";
  28. echo "<td>
  29. <form action='usun.php' method='get'name='usun'>
  30. <input type='submit' name='pusun' value='".$row['ID_lek']."'/>
  31. </form>
  32. <td> ";
  33. }
  34. }
  35. mysql_close($link);
  36. ?>
  37. <?php
  38. var_dump($_GET);
  39. $link = mysql_connect('localhost', 'root', 'x')or die(mysql_error());
  40. mysql_select_db('szpital',$link)or die(mysql_error());
  41. // Usuwanie leku
  42. if (isset($_GET['pusun'])) {
  43. echo '<span class="pyt">Chcesz usuną lek o ID ' . $_GET['pusun'] . '? <a href="usun.php?usunid='.$_GET['pusun'].'">Tak</a> | <a href="baza.php">Nie</a></span>';
  44. exit();
  45. }
  46. if (isset($_GET['usunid'])) {
  47. // usuwanie leku
  48. $idu = $_GET['usunid'];
  49. $sql = mysql_query("DELETE from szpital.lek WHERE ID_lek='".$row['ID_lek']."' LIMIT 1") or die (mysql_error());
  50. header("location: usun.php");
  51. exit();
  52. }
  53. ?>
Go to the top of the page
+Quote Post

Posty w temacie
- Usuwanie rekordów   [HTML][PHP][MySQL] Usuwanie rekordów z bazy   29.01.2013, 19:59:51
- - _Borys_   W skrócie i celach testowych plik usun1.php: [PHP...   29.01.2013, 22:25:22
- - Usuwanie rekordów   Po tym co poradziłeś oraz przeróbce własnego kodu,...   30.01.2013, 08:51:03
- - nospor   Za drugim razem widzisz pustą tablice, bo robisz p...   30.01.2013, 10:23:14
- - Usuwanie rekordów   Mój błąd, pewnie upierdliwie to wyglądało. Dziękuj...   30.01.2013, 10:43:27


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: 18.10.2025 - 07:10