![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 1.07.2010 Ostrzeżenie: (20%) ![]() ![]() |
Witam
Mam pewną funkcję, która dodaje do tabeli nowy rekord (złożony z trzech pól) przy każdym wywołaniu:
No i teraz chciałbym napisać funkcję, która usuwa rekord po podanym id_produktu:
Czytałem że array_slice i array_merge może pomóc, ale nie bardzo wiem jak ich użyć. Druga zagadka jaką mam do rozwiązania to jak przenieść zawartość tej tablicy do tabeli SQLowej o strukturze: id (primary key), id_produktu, nazwa, cena. Pewnie trzeba będzie użyć foreacha. Błagam o pomoc. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Na obecnej strukturze nie pójdzie tak prosto. Musisz polecieć pętlą (foreach) i usunąć (unset) element tablicy, który ma wskazany ID ($element['id_produktu] == $id_do_usuniecia). Mógłbyś ustalić, że kluczem tablicy jest właśnie $id_do_usunięcia i wówczas nie potrzebujesz pętli - robisz sam unset (+ isset() żeby nie waliło ostrzeżeniem). Podczas dodawania elementu do tablicy zamiast:
robisz:
i jesteś w domu. Tyle tylko, że wówczas 1 produkt może wystąpić w tablic 1 raz. Do do drugiego pytania: tak, pętla (foreach) i wpisanie danych do bazy (INSERT). Polecam tzn. multi insert czyli dodawanie kilku rekordów za jednym zamachem:
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 16:22 |