SpiderPL
6.06.2005, 11:56:46
Witam!
Mam lamerskie pytanie, ale upocilem sie juz porzadnie i nie wiem nadal jak to zrobic, a mianowicie potrzebuje umiescic w bazie danych zawartosc zmiennej tablicowej - $zmienna[]. Probowalem juz na rozne sposoby i za kazdym razem w bazie pojawia sie jedynie ARRAY i nijak tego nie moge odczytac. A moze zle zdefiniowalem rodzaj pola? W tej chwili probowalem umiescic te zmienna w polu typu TEXT. Czy ktos moglby podac przyklad jak to nalezy zrobic?
nospor
6.06.2005, 11:59:43
ale to jest jdeno wymiarowa tablica, a jej indexy to pola w tablicy?
Czy to może być dowolna tablica, a ty chcesz ją zapisać. Jak tak to pobaw się z serialize
SpiderPL
6.06.2005, 13:09:07
To jest tablica zawierajaca kilka wartosci:
$zmienna[0]=$jakaswartosc1;
$zmienna[1]=$jakaswartosc2;
......
......
$zmienna[6]=$jakaswartosc6;
chcę ją po prostu zapisac do bazy.
nospor
6.06.2005, 13:18:50
jesli to będzie stala liczba wartości to możesz porobic pola w tablicy i zapisywac to do pol. MOżesz też do jednego poprzez implode
$wartosc=implode(';',$zmienna); kolejne wartości oddzielone będą średnikiem
SpiderPL
6.06.2005, 13:38:05
Ok, dziekuje, jednak tu mam problem... Bo to jest zmienna, ktora pochodzi z formularza i tablica ma przypisana ilosc elementow w zaleznosci od ilosci pol zaznaczonych w formularzu, wiec nie znam ilosci elementow tej tablicy, zeby tak po prostu podac wartosci pooddzielane przecinkami. Po prostu nie wiem ile ich bedzie...
Jak bys to rozwiazal w tej sytuacji?
nospor
6.06.2005, 13:43:48
to zrób tak:
<?php
//zapisanie
$zm=serialize($tablica);//zachowa klucze i wartości tablicy $sql=\"insert into tabela values ('jakestwojepolajeslisa',$zm)\";
?>
do przywrócenia tablicy sluzy funckjca unserialize()
SpiderPL
6.06.2005, 15:12:03
Dziekuje bardzo! To jest dokladnie to o co mi chodzilo. Tablica trafia do pola rekordu w bazie danych w takiej postaci jak chcialem i potem przez unserialize() wraca do poprzedniej postaci. Jeszcze raz dzieki!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.