Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP] Edycja pojedynczego rekordu w bazie danych
zelekbmx
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 23.05.2016
Skąd: Dębica

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


Witam! Jako, że jestem zielony w php prosiłbym kogoś o pomoc w stworzeniu skryptu, który umożliwia mi edycję pojedynczego rekordu w bazie danych, ponieważ mam skrypt który wyświetla pojedynczy rekord z bazy na stronie WWW, a teraz chciałbym dodatkowy skrypt na edycję tego pola. Z góry dziękuję za pomoc (IMG:style_emoticons/default/smile.gif)
Powód edycji: [Kshyhoo]: tagi
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #2





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Przenoszę do stosownego działu.
Go to the top of the page
+Quote Post
KsaR
post
Post #3





Grupa: Zarejestrowani
Postów: 520
Pomógł: 102
Dołączył: 15.07.2014
Skąd: NULL

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


Pokaż ile już zrobiłeś. (Podaj kod).
Tu przykładowy link który może ci się przydać:
http://www.sql-kursy.pl/mysql-UPDATE-DELET...LTER-TABLE.html
(Lub w google: mysql update kurs)
Go to the top of the page
+Quote Post
zelekbmx
post
Post #4





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 23.05.2016
Skąd: Dębica

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


Wszystko jest zrobione tutaj, wystarczy dodać żeby aktualizowało rekord bo kliknięciu przycisku POPRAW i teraz nie wiem jak to zrobić :/

  1. <?php
  2. // zapytanie zawierające "placeholder" czyli parametr przekazany do zapytania
  3. $sql = 'SELECT `nazwa1`, `nazwa2`, `nazwa3`, `cena1`, `cena2`, `cena3` FROM `napoje-zimne` LIMIT 1';
  4. $user = 'uzytkownik';
  5. $pass = 'haslo';
  6.  
  7. // nawiązanie połączenia z domyślnym kodowaniem UTF8
  8. $dbh = new PDO('mysql:host=localhost;dbname=baza_danych', $user, $pass,
  9. array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"));
  10.  
  11. // przygotowanie wcześniejszego zapytania
  12. $sth = $dbh->prepare($sql);
  13.  
  14. // bezpieczne bindowanie parametrów - zostanie podstawiony pod "placeholder" czyli znak zapytania
  15. $sth->bindParam(1, $_POST['email']);
  16.  
  17. // wykonanie zapytania
  18. $sth->execute();
  19.  
  20. // przypisanie do zmiennej $result tablicy zawierającej wszystkie wyszukane rekordy
  21. $result = $sth->fetchAll();
  22.  
  23. // wyświetlanie
  24. foreach ($result as $row) {
  25.  
  26. echo '<form action="index.php" method="post">
  27. <input type="hidden" name="a" value="save" />
  28. Nazwa pizzy:<br />
  29. <input type="text" name="imie"
  30. value="'.$row['nazwa1'].'" /><br />
  31. <input type="submit" value="popraw" />
  32. </form>';
  33. }
  34. ?>
Go to the top of the page
+Quote Post
viking
post
Post #5





Grupa: Zarejestrowani
Postów: 6 381
Pomógł: 1116
Dołączył: 30.08.2006

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


Widzę że skopiowałeś z mojej strony ale jednak mógłbyś też trochę pomyśleć przy okazji.
W twoim zapytaniu nie ma placeholdera więc wstawianie bindParam email nie ma sensu. Potrzebujesz wybrać dane gdzie id = x. Formularz oddzielnie a nie w pętli. Po sprawdzeniu i wysłaniu danych (masz w kolejnej poradzie jak filtrować) robisz UPDATE.
Go to the top of the page
+Quote Post
zelekbmx
post
Post #6





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 23.05.2016
Skąd: Dębica

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


Poradziłem sobie, zrobiłem skrypt cały skrypt od nowa i śmiga (IMG:style_emoticons/default/smile.gif)

--
Wszystkim dziękuję za pomoc,

Temat do zamknięcia.

Ten post edytował zelekbmx 26.05.2016, 00:19:52
Go to the top of the page
+Quote Post

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: 16.09.2025 - 17:25