• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Serialize tablicy z JS nie działa poprawnie, tablica staje się wartością string w nowej tablicy

0 głosów
38 wizyt
pytanie zadane 20 czerwca 2021 w PHP przez Renzov Użytkownik (980 p.)

Hej

Mam problem z serializacją danych. Napisałem kod JS dzięki któremu można dodawać tagi. Działa to na takie zasadzie, że jest tablica tags do której są dodawane tagi. Tutaj wszystko działa prawidłowo. Problem pojawia się w momencie próby zapisuje tablicy do bazy danych poprzez PHP.

Do zapisania tablicy używam Serialize(), ale problem jest taki, że tablica jest zapisana jako jedna wartość string.

1. Utworzenie tablicy w JS
 

tags = ['samochod', 'motoryzacja', 'polska']

2. Uzywam funkcjo serialize PHP, w rezultacie otrzymuje to:

a:1:{i:0;s:27:"samochod,motoryzacja,polska";}

Co już jest błędne. NIe mam pojęcia jak to zrobić. Próbowałem JSON.stringify, dodać cast JSONArray ale nici.

Czy ktoś może wiem jak temu zaradzić?

1
komentarz 20 czerwca 2021 przez adrian17 Ekspert (306,580 p.)
Musisz pokazać więcej kodu - jaki Serialize, jak ogólnie wygląda kod po stronie JSa, jak po stronie PHP - bez tego raczej nikt Ci nic konkretnego nie powie.
komentarz 20 czerwca 2021 przez Renzov Użytkownik (980 p.)

Udało mi się rozwiązać problem (Od razu podam w rozwiązaniu cały kod). Nie jestem pewien, czy to na 100% dobre rozwiązanie, ale działa.

1. Elementy są dodawane do tabeli w JavaScripcie

2. Tabela przed wysłanie do backendu przechodzi przez funkcje JSON Stringify

3. Wartość przesłana do backendu przechodzi przez json_decode a następnie przez serializację

    public function setContentAttribute($value)
    {
        $value = json_decode($value);
        $this->attributes['content'] = serialize($value);
    }

 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
0 odpowiedzi 234 wizyt
pytanie zadane 2 września 2017 w PHP przez marcin99b Maniak (71,590 p.)
0 głosów
0 odpowiedzi 251 wizyt
0 głosów
1 odpowiedź 324 wizyt
pytanie zadane 30 lipca 2019 w JavaScript przez niezalogowany

86,448 zapytań

135,207 odpowiedzi

300,348 komentarzy

57,196 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...