Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Usuwanie rekordów z bazy danych
tomek200
post
Post #1





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 28.12.2014

Ostrzeżenie: (0%)
-----


Witam. Mój kod do wyświetlania danych z tabeli wygląda tak:
  1. <?php
  2. function lacz_bd()
  3. {
  4. $db = new mysqli('localhost', 'tomek200', '', 'jakas baza');
  5. if (! $db)
  6. return false;
  7. $db->autocommit(TRUE);
  8. return $db;
  9. }
  10. //połaczenie z bazą
  11. $db = lacz_bd();
  12.  
  13. $zapytanie = "select data1, data, cena, ilosc, suma from users ORDER BY `ID` DESC";
  14.  
  15. $wynik = $db->query($zapytanie);
  16.  
  17. $ile_znalezionych = $wynik->num_rows;
  18. //rozpoczynamy budowanie tabeli dla naszych danych
  19. echo '<table>';
  20. echo '<tr><td style="border:solid 1px #000">Data</td><td style="border:solid 1px #000">data1</td> <td style="border:solid 1px #000">cena</td> <td style="border:solid 1px #000;padding:5px;">ilosc</td> <td style="border:solid 1px #000; width: 100px;">suma</td> </tr>';
  21.  
  22. for ($i=0; $i <$ile_znalezionych; $i++)
  23. {
  24. $wiersz = $wynik->fetch_assoc();
  25. echo '<tr>';
  26. echo '<td style="border:solid 1px #000;padding: 10px;">'.$wiersz['data1'].'</td>';
  27. echo '<td style="border:solid 1px #000;padding: 10px;">'.$wiersz['data'].'</td>';
  28. echo '<td style="padding: 10px;border:solid 1px #000">'.$wiersz['cena'].'</td>';
  29. echo '<td style="padding: 10px;border:solid 1px #000">'.$wiersz['ilosc'].'</td>';
  30. echo '<td style="padding: 10px;border:solid 1px #000;width: 50px;">'.$wiersz['suma'].'</td>';
  31. echo '</tr>';
  32. }
  33. echo '</table>';
  34.  
  35. ?>

I mam pytanie jak zrobić do każdego rekordu przycisk który wywoła usunięcie tego rekordu?

Ten post edytował tomek200 28.02.2015, 12:26:21
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
ilidir
post
Post #2





Grupa: Zarejestrowani
Postów: 183
Pomógł: 14
Dołączył: 27.09.2014

Ostrzeżenie: (0%)
-----


Musisz dodać przycisk do każdego rekordu który usunie poprzez wywołanie polecenia MySQL z zmienna tą wartość.
Go to the top of the page
+Quote Post
tomek200
post
Post #3





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 28.12.2014

Ostrzeżenie: (0%)
-----


Wiem jak dodać przycisk ale nie wiem jak wywołać nim zapytanie MySQL
Go to the top of the page
+Quote Post
ilidir
post
Post #4





Grupa: Zarejestrowani
Postów: 183
Pomógł: 14
Dołączył: 27.09.2014

Ostrzeżenie: (0%)
-----


napisz funkcje która zadziała na onclick który wywołasz swoim klawiszem nastepnie przekazać do funkcji wartość danego rekordu i pozabawie:)
Go to the top of the page
+Quote Post
tomek200
post
Post #5





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 28.12.2014

Ostrzeżenie: (0%)
-----


Chciłbym kontynuować temat
  1. <?php
  2. $form_button = '<form action="usun.php" method="POST"><input type="submit" value="Usuń"></form>';
  3. function lacz_bd()
  4. {
  5. $db = new mysqli('localhost', 'tomek200', 'haslo', 'jakas baza');
  6. if (! $db)
  7. return false;
  8. $db->autocommit(TRUE);
  9. return $db;
  10. }
  11. //połaczenie z bazą
  12. $db = lacz_bd();
  13. //zapytanie sql do bazy określające jakie dane mają zostać pobrane
  14. $zapytanie = "select data1, data, cena, ilosc, suma from users ORDER BY `ID` DESC";
  15. //pobranie wyniku zapytania
  16. $wynik = $db->query($zapytanie);
  17. //obliczanie ilości rekordów
  18. $ile_znalezionych = $wynik->num_rows;
  19. //rozpoczynamy budowanie tabeli dla naszych danych
  20. echo '<table>';
  21. echo '<tr><td style="border:solid 1px #000">Data</td><td style="border:solid 1px #000">Imie</td> <td style="border:solid 1px #000">E-Mail </td> <td style="border:solid 1px #000;padding:5px;">Temat</td> <td style="border:solid 1px #000; width: 100px;">Wiadomość</td> </tr>';
  22. //pętla po rekordach z bazy
  23. for ($i=0; $i <$ile_znalezionych; $i++)
  24. {
  25. $wiersz = $wynik->fetch_assoc();
  26. echo '<tr>';
  27. echo '<td style="border:solid 1px #000;padding: 10px;">'.$wiersz['data1'].'</td>';
  28. echo '<td style="border:solid 1px #000;padding: 10px;">'.$wiersz['data'].'</td>';
  29. echo '<td style="padding: 10px;border:solid 1px #000">'.$wiersz['cena'].'</td>';
  30. echo '<td style="padding: 10px;border:solid 1px #000">'.$wiersz['ilosc'].'</td>';
  31. echo '<td style="padding: 10px;border:solid 1px #000;width: 50px;">'.$wiersz['suma'].'</td>';
  32. echo '<td style="padding: 10px;border:solid 1px #000;width: 50px;">'.$form_button.'</td>';
  33. echo '</tr>';
  34. }
  35. echo '</table>';
  36.  
  37. ?>

W pliku usun.php mam zapytanie
  1. DELETE FROM `tabela` WHERE ID
Moje pytanie to co mam wpisać po ID żeby nie usówało mi wszystkich rekordów tylko ten przy którym wcisneliśmy przycisk usuń? Chodzi mi o coś takiego jak w PHP My Admin.

Ten post edytował tomek200 5.03.2015, 19:50:01
Go to the top of the page
+Quote Post
com
post
Post #6





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

Ostrzeżenie: (0%)
-----


no id tego rekordu przekazane w formularzu czy getem, jak to zrobisz twój wybór ale miej na uwadze sql injection i te sprawy smile.gif
Go to the top of the page
+Quote Post
tomek200
post
Post #7





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 28.12.2014

Ostrzeżenie: (0%)
-----


Dobra ale jak przekazać id jak mi rekordy dodają się automatycznie z formularza. Bo ręcznie dodawać to nie ma sęsu.
Go to the top of the page
+Quote Post
nospor
post
Post #8





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




Przeciez o tutaj:
  1. for ($i=0; $i <$ile_znalezionych; $i++)
  2.  
  3. {
  4.  
  5. $wiersz = $wynik->fetch_assoc();
  6.  
  7. echo '<tr>';
  8.  
  9. echo '<td style="border:solid 1px #000;padding: 10px;">'.$wiersz['data1'].'</td>';
  10.  
  11. echo '<td style="border:solid 1px #000;padding: 10px;">'.$wiersz['data'].'</td>';
  12.  
  13. echo '<td style="padding: 10px;border:solid 1px #000">'.$wiersz['cena'].'</td>';
  14.  
  15. echo '<td style="padding: 10px;border:solid 1px #000">'.$wiersz['ilosc'].'</td>';
  16.  
  17. echo '<td style="padding: 10px;border:solid 1px #000;width: 50px;">'.$wiersz['suma'].'</td>';
  18.  
  19. echo '<td style="padding: 10px;border:solid 1px #000;width: 50px;">'.$form_button.'</td>';
  20.  
  21. echo '</tr>';
  22.  
  23. }

juz dynamicznie wyswietlasz rekordy. Nie wyswietlasz ich recznie... tak samo dynamicznie masz generowac to ID


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

"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
tomek200
post
Post #9





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 28.12.2014

Ostrzeżenie: (0%)
-----


Dzięki szkoda że wcześniej nie pomyślałem o tak banalnej rzeczy.
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: 21.08.2025 - 14:17