Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak usunąć znak z pola z ciągiem znaków? tablica array ?
Domon
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 19.11.2008

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


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 :/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


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.
Go to the top of the page
+Quote Post
Domon
post
Post #3





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 19.11.2008

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


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ł...

Ten post edytował Domon 5.04.2009, 11:24:13
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


  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?
Go to the top of the page
+Quote Post
phpion
post
Post #5





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




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

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

(IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
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: 25.08.2025 - 04:51