Emotikony i skrypt PHP

Odpowiedz Nowy wątek
2019-08-06 18:13

Rejestracja: 1 rok temu

Ostatnio: 4 dni temu

0

Witam mam pewien problem związany z emotikonami. Obecnie stworzyłem skrypt używając ts3 framework php, który uruchamia się co 5min i zlicza ile kto spędził czasu na serwerze tworząc potem ranking. Pobieram nicki osób obecnych, skrypt sprawdza, czy dany nick jest już w bazie. Jeżeli jest to dodaje mu 5 min przebytego czasu, jeżeli nie to tworzy nowy rekord w bazie. (wiem, że nie jest to idealne rozwiązanie). Problem pojawia się jeżeli ktoś ma nick zawierający emotikony. Wtedy cały mój skrypt wariuje i nie da się nazwy takiej osoby zapisać w bazie. Dlatego mam pytanie czy da się jakoś usunąć te emotikony? np. jedna osoba ma taki nick []💕⚡PatЯiX⚡ 1221💕NL i jak te serca zapisać w bazie albo je jakoś wyrzucić? Próbowałem str_replace ale jak skopiowałem to serce, czy pioruny to nie zadziałało, a żadnego kodu tych znaków nie widzę. Co z tym zrobić?

zapewne sklejasz kwerendę albo coś podobnego. Użyj kwerendy parametrycznej. I pokaż kod - AnyKtokolwiek 2019-08-06 20:21

Pozostało 580 znaków

2019-08-06 20:02
Moderator Kariera

Rejestracja: 2 lata temu

Ostatnio: 17 minut temu

Lokalizacja: Poznań

Rzuć okiem na https://stackoverflow.com/que[...]a-simple-removeemoji-function

Tylko musisz pamiętać, że usuwając emotki może dojść do sytuacji, w której różne nicki stana się identyczne, jeśli wcześniej różniły się tylko emotkami. Przykładowo "Stefan EMOTKA" oraz "EMOTKA Stefan" na razie się różnią, ale po usunięciu emotki obaj będą "Stefanem".

Zamiast tego, lepiej się zastanów, czemu tych emotek nie umiesz poprawnie obsługiwać. Inna rzecz, na którą powinieneś rzucić okiem - https://stackoverflow.com/que[...]g-to-insret-emoji-in-database


Naczelny forumowy hejter Apple

That game of life is hard to play, I'm gonna lose it anyway
The losing card I'll someday lay, So this is all I have to say
edytowany 1x, ostatnio: cerrato, 2019-08-06 20:05

Pozostało 580 znaków

2019-08-06 20:27

Rejestracja: 9 lat temu

Ostatnio: 6 minut temu

Lokalizacja: Grudziądz/Bydgoszcz

3

a co ci da zliczanie po nickach jak nick można sobie co sekundę zmieniać? Zapewne masz tam jakieś identyfikator. Jego zliczaj.


It's All About the Game.

Pozostało 580 znaków

2019-08-06 20:32

Rejestracja: 1 rok temu

Ostatnio: 4 dni temu

0

Większość osób ma taki sam nick na ts jak w grze i go nie zmieniają. Często część osób loguje się z różnych komputerów, gdzie mają inną tożsamość, ale id też zbieram.

edytowany 2x, ostatnio: mordkaje, 2019-08-06 20:36

Pozostało 580 znaków

2019-08-06 20:34

Rejestracja: 3 lata temu

Ostatnio: 16 minut temu

1

TS3 wyswietla tez ile kto siedzi na serwerze w danej sesji. Moze jest jakis event User::onLeft i mozna by po wyjsciu z serwera dosumowac czas?

edytowany 1x, ostatnio: stivens, 2019-08-06 20:34

Pozostało 580 znaków

2019-08-06 21:53

Rejestracja: 9 lat temu

Ostatnio: 6 minut temu

Lokalizacja: Grudziądz/Bydgoszcz

2

to zamiast trzymać nick, generuj sobie hasha na jego podstawie i tego hasha zapisuj, najprostszy md5 wystarczy.


It's All About the Game.

Pozostało 580 znaków

2019-08-07 09:16

Rejestracja: 1 rok temu

Ostatnio: 4 dni temu

0

Dzięki za odpowiedzi. Udał się lepszy wariant, czyli obsługa tych emotikon.

No to po pierwsze - łapki (oraz być może ptaszka) dla pomocników proszę :P A po drugie - możesz się podzielić swoim rozwiązaniem, być może się komuś przyda w przyszłości, kto będzie też walczył z tym problemem. - cerrato 2019-08-07 09:26
Jedyne co wystarczyło zrobić to zmienić na utf8mb4 wszędzie gdzie było utf-8 wiec nie ma zbytnio czego pokazywać, ale łapki w górę dałem. - mordkaje 2019-08-07 10:06
na pewno dałeś? popatrz na mój post kilka pięter wyżej :P - cerrato 2019-08-07 10:09
nie wiem czemu po odświeżeniu strony znika - mordkaje 2019-08-07 10:10
ale chyba już ok - mordkaje 2019-08-07 10:11
Tak, dzięki :) - cerrato 2019-08-07 10:12

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0