Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][mysql]usuwanie rekordu z bazy, wiem ze juz bylo :/
-kalafoon-
post
Post #1





Goście







Witam,
przewertowałem wszystkie posty na ten temat i przerabialem pod swoja baze wszystkie kody, ktore znalazlem ale nei udalo mi sie tego zrobic, dlatego prosze o pomoc.
Mam tabele w bazie danych produkty

W tabeli są takie kolumny:
ID_Produktu (auto inkrementacja)
NazwaProduktu
InfoMale
InfoDuze
Cena
CenaNaWylacznosc
DataDodania


I teraz z poziomu php wyswietlam tą tabele - ponizej jest caly moj kod php:
  1. <?
  2. $connection = @mysql_connect('localhost', 'root', '') 
  3. or die('Brak polaczenia z serwerem MySQL.<br />Blad: '.mysql_error()); 
  4. $db = @mysql_select_db('sklep') 
  5. or die('Nie moge polaczyc sie z baza danych<br />Blad: '.mysql_error()); 
  6.  
  7. $select = mysql_query("Select ID_Produktu, NazwaProduktu, InfoMale FROM produkty ORDER BY ID_Produ
    ktu"
    );
  8.  
  9. '<table style="border-top-style: groove;" border="1" width="100%" class="text" cellspacing="2" cellpadding="2">
  10. <tr>
  11. <td width="4%" bgcolor="gray">ID</td>
  12. <td width="80%" bgcolor="gray">Opis</td>
  13. <td width="16%" bgcolor="gray">Akcje</td>';
  14.  
  15. while ($wiersz = mysql_fetch_array($select, MYSQL_NUM)) {
  16. echo '<tr><td>'; 
  17. printf ("%s", $wiersz[0]); 
  18. echo '</td><td>';
  19. printf ("%s", $wiersz[1]); 
  20. echo '</td><td align="center">
  21.  
  22. TUTAJ POWINNY ZNALEZC SIE WPISY DO EDYCJI I USUWANIA REKORDU
  23.  
  24. echo' </td></tr>';
  25. }
  26. echo '</table>;
  27. ?>


Przy kazdym wierszu pobranym z bazy pojawiaja sie z prawej 2 linki EDYTUJ i USUN.
Ale jak zrobic zeby faktycznie usuwal i edytowal? Narazie wystarczy mi tylko usuwanie.

W miare mozliwosci prosilbym o pełne polecenie pod moj powyzszy skrypt bo z php jestem zielony i nie bardzo bede wiedzial jak to przerobic :/
dlatego pisze w Przedszkolu.
z gory bardzo dziekuje za odpowiedzi...
pozdrawiam serdecznie
Powód edycji: dodalem tag (cysiaczek)
Go to the top of the page
+Quote Post
bogdan89
post
Post #2





Grupa: Zarejestrowani
Postów: 320
Pomógł: 36
Dołączył: 28.08.2006
Skąd: Wrocław

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


  1. <?php
  2. echo '<a href="?akcja=usun&id='.$wiersz[0].'">usun</a>';
  3. ?>


  1. <?php
  2. if ($akcja == 'usun') {
  3. $id = $_GET['id'];
  4. @mysql_query("DELETE FROM produkty WHERE ID_Produktu='$id' LIMIT 1");
  5. }
  6. ?>


Ten post edytował bogdan89 21.10.2007, 09:50:32
Go to the top of the page
+Quote Post
-kalafoon-
post
Post #3





Goście







Powiedz mi jeszcze tylko gdzie to mam wpisac bo podales 2 odrebne kody i sie zgubilem tongue.gif
Go to the top of the page
+Quote Post
bogdan89
post
Post #4





Grupa: Zarejestrowani
Postów: 320
Pomógł: 36
Dołączył: 28.08.2006
Skąd: Wrocław

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


pierwszy kod to link "USUN"

drugi to instrukcja odpowiadajaca za usuwanie rekordu;
daj go na początku dokumentu PHP;
Go to the top of the page
+Quote Post
-kalafoon-
post
Post #5





Goście







jeeeee - DZIALA exclamation.gif smile.gif nawet nie wiesz ile sie z tym meczylem - naprawde wielkie dzieki exclamation.gif
a da sie zrobic zeby automatycznie uzupelnial ID_Produktu bo gdy usuwam jakis rekord np 2, to pozostale ID_Produktu
zostaja takie same tzn
1
3
4

pozdrawiam i jeszcze rz wielkie dzieki exclamation.gif czarodziej.gif
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #6





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Popraw proszę tytuł topiku na zgodny z zasadami forum Przedszkole

Tak ma być - powinny być unikalne. Jak chcesz porzadkowe, to zrób dodatkową kolumnę w tabeli.

Pozdrwiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
bogdan89
post
Post #7





Grupa: Zarejestrowani
Postów: 320
Pomógł: 36
Dołączył: 28.08.2006
Skąd: Wrocław

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


jesli w bazie danych ustawione masz auto_increment to ja bym sie z takim czyms nie bawił

proponuje natomiast zamiast ID w pierwszej kolumnie podać liczbę porządkową;

daj (9 wiersz i okolice):
  1. <?php
  2. $lp = 0;
  3. while ($wiersz = mysql_fetch_array($select, MYSQL_NUM)) {
  4. $lp=$lp+1;
  5. ?>


i zamiast $wiersz[0] w pierwszej kolumnie wpisz $lp;

Ten post edytował bogdan89 21.10.2007, 10:13:41
Go to the top of the page
+Quote Post
-kalafoon-
post
Post #8





Goście







Cysiaczek - nie wiem gdzie to zmienic - moze nie widze tej opcji bo nie ejstem zarejestrowany?!

wielkie dzieki za odpowiedzi !
Go to the top of the page
+Quote Post
-kalafoon-
post
Post #9





Goście







a majac taki kod co wpisac w miejsce tych znakow zapytania na dole zeby mozna bylo edytowac taki rekord jak podalem w pierwszym poscie.
wiem ze trzeba formularz zrobic ale on ma byc w tym pliku czy osobnym? jak mialoby to wygladac ?

  1. <?
  2. $connection = @mysql_connect('localhost', 'root', '') 
  3. or die('Brak polaczenia z serwerem MySQL.<br />Blad: '.mysql_error()); 
  4. $db = @mysql_select_db('sklep') 
  5. or die('Nie moge polaczyc sie z baza danych<br />Blad: '.mysql_error()); 
  6.  
  7. $select = mysql_query("Select ID_Produktu, NazwaProduktu, InfoMale, Cena, DataDodania FROM produkt
    y ORDER BY ID_Produktu"
    );
  8.  
  9. if ($akcja == 'usun') {
  10. $id = $_GET['id'];
  11. @mysql_query("DELETE FROM produkty WHERE ID_Produktu='$id' LIMIT 1");
  12. }
  13.  
  14. '<table width="100%" style="border-top-style: groove;" border="1" width="100%" class="text" cellspacing="2" cellpadding="2">
  15. <tr>
  16. <td width="4%" bgcolor="gray">ID</td>
  17. <td width="20%" bgcolor="gray">Nazwa</td>
  18. <td width="40%" bgcolor="gray">Opis</td>
  19. <td width="10%" bgcolor="gray">Cena</td>
  20. <td width="10%" bgcolor="gray">Data Dodania</td>
  21. <td width="30%" bgcolor="gray">Akcja</td>';
  22.  
  23. while ($wiersz = mysql_fetch_array($select, MYSQL_NUM)) {
  24. echo '<tr><td>'; 
  25. printf ("%s", $wiersz[0]); 
  26. echo '</td><td>';
  27. printf ("%s", $wiersz[1]); 
  28. echo '</td><td>';
  29. printf ("%s", $wiersz[2]); 
  30. echo '</td><td>';
  31. printf ("%s", $wiersz[3]); 
  32. echo '</td><td>';
  33. printf ("%s", $wiersz[4]); 
  34. echo '</td><td align="center">
  35.  
  36. <a href=??????????????????????[Edytuj]</a> 
  37.  
  38. <a href="?akcja=usun&id='.$wiersz[0].'">[Usun]</a>';
  39.  
  40. echo' </td></tr>';
  41. }
  42. echo '</table>';
  43. ?>
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: 20.08.2025 - 19:27