Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak usunąć znak z pola z ciągiem znaków? tablica array ?
Forum PHP.pl > Forum > PHP
Domon
Witam wszystkich po raz kolejny.
Robię sobie skrypt kont premium, po wykupieniu konta dodaje mnie do specjalnej grupy o id 4. Wszystko pięknie działa lecz gdy termin konta premium się kończy wypadało by usunięcie z tej grupy. I tu są schody, otóż to że nie jest to jedna grupa tylko są to grupy:
Administratorzy
Moderatorzy
Graficy
Premium
Przyjaciele

I załóżmy że user z grupami Moderatorzy, Graficy kupi konto premium, to doda go do grupy premium czyli będzie Moderatorzy, Graficy, Premium.
I wszystkie te dane (ID grup) zapisuje mi w tabeli _users w polu user_groups zapisuje w postaci
.1.2.3.4.5
i teraz chciałbym żeby przez jakiś kod usunęło mi z tego pola tylko to .4
domyślam się że trzeba użyć jakieś tablicy array/explode czy coś jeszcze ale nic mi nie wychodzi ;/
Aby wyświetlić grupy usera
to $userdata['user_groups'] czyli musiałbym jakoś z tego wyrzucić to .4
Proszę Was o pomoc, siedze nad tym 2 godzine i nic nie wychodzi :/
dr_bonzo
Cytat
I wszystkie te dane (ID grup) zapisuje mi w tabeli _users w polu user_groups zapisuje w postaci
.1.2.3.4.5

Nie ma to jak dobry projekt bazy, wlasnie temu sie wklada takie powiazania do osobnych rekordow w dodatkowej tabeli.

No nie wiem jak ci nie dziala z explode - przeciez to ci zwroci wszystkie liczby znajdujace sie w rekordzie, pokz twoj kod i to co dostajesz w wyniku.
Domon
Nie ja projektowałem bazę danych. To cms extreme-fusion... Tych kodów trochę było, więc może podaj mi jakiś przykład który działa podobnie.. Myślę, że jakbym miał jakiś wzór to bym sobie poradził...
dr_bonzo
  1. <pre><?php
  2.  
  3. $cell = ".1.2.3.4.5";
  4. print($cell . "\n");
  5.  
  6.  
  7.  
  8. $ids = explode('.', $cell );
  9. print_r( $ids );
  10.  
  11. // no to jeszcze raz
  12. $cell = trim( $cell, ".");
  13. $ids = explode('.', $cell );
  14. print_r( $ids );
  15.  
  16. $indexCzworki = array_search( 4, $ids );
  17. var_dump($indexCzworki);
  18. unset($ids[$indexCzworki]);
  19.  
  20. print_r($ids);
  21.  
  22. $newCell = "." . join(".", $ids );
  23. print_r($newCell);
  24. ?>

No i co tu trudnego?
phpion
Cytat(dr_bonzo @ 5.04.2009, 14:24:44 ) *
No i co tu trudnego?

O fak, ale poszalałeś smile.gif nie wystarczyłoby po prostu:
  1. <?php
  2. $newCell = str_replace('.4', '', $cell);
  3. ?>

smile.gif
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.