Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V  < 1 2  
Reply to this topicStart new topic
> [PHP] Aktualizacja modułu z php 5.6 na 7.0
viking
post 15.01.2018, 10:28:15
Post #21





Grupa: Zarejestrowani
Postów: 4 843
Pomógł: 817
Dołączył: 30.08.2006

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


Niemożliwe żeby błąd zapytania który sypał co najmniej warningiem nie został nigdzie uwzględniony. Raczej to wyżej nie działa. czyli które ci się zapytania wykonują na nowej wersji a które nie? Wkładania rekordów do bazy działa ale nie działa samo ich pobieranie?


--------------------
Go to the top of the page
+Quote Post
alkesz1718
post 19.01.2018, 02:25:33
Post #22





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 8.12.2014
Skąd: Czernina

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


Napiszę to co pisałem jednemu użytkownikowi na PW.
Moduł działa na zasadzie że: użytkownik, gość lub robot wchodząc na stronę jego dane są wysyłane do bazy na określony czas. Na stronie w bloku wyświetla liczbę aktywnych użytkowników ale nie wyświetla nicków i nawet w konsoli ich nie ma tak jakby nie istniały. W panelu admina gdzie mam konfigurację tam również można zobaczyć kto jest online i ich dane i w panelu wszystko jest ok tylko na stronie coś nie chce wyświetlać.

Jak zmienię wersję PHP na 5.6 to wszystko pokazuje jak należy ale jak zmienię na 7.x to już nagle brak użytkowników.

Wcześniejszy błąd dotyczący bazy co podałem wyświetlał w wyszukiwarce jak wpisało się adres strony to tak jakby w opisie strony przykład:


//////////////////////////////////////////////


Problem z wyświetlaniem użytkowników rozwiązany ale nadal ni stąd ni z owąd nadal pojawia się błąd z SQL w 'opisie' strony w wynikach wyszukiwania. Skopiowałem część tego błędu by znaleźć czy dużo jest takich stron... na szczęście nie ale to strasznie odstrasza ludzi jak coś wpisują w wyszukiwarkę i wyskakuje im 1 strona gdzie w opisie jest błąd...

Po przetłumaczeniu tego błędu wychodzi:
Cytat
Wystąpił błąd w składni SQL; sprawdź instrukcję, która odpowiada twojej wersji serwera MySQL dla właściwej składni do użycia w pobliżu `` time` = VALUES (`time`) 'w linii 3. Zapytanie SQL: INSERT INTO `dle_online` (`key`, `uid`, `uname`, `time`, `ip`, `user_agent`, `os`, `location`, ...


Jedyne takie zapytania to mam 2 w całym module:
  1. if($is_logged)
  2. {
  3.  
  4. $OS = $online_api->getUserOS($_UA);
  5.  
  6. $user_agent = $online_api->getUserBrowser($_UA);
  7.  
  8. $key = md5($member_id['user_id'].$_IP);
  9.  
  10. // Pierwsze Odwołanie
  11. $db->query("INSERT INTO `".PREFIX."_online` (`key`, `uid`, `uname`, `time`, `ip`, `user_agent`, `os`, `location`, `proxy`, `foto`, `user_group`) VALUES ('{$key}', '{$member_id['user_id']}', '{$member_id['name']}', '$_TIME', '{$_IP}', '{$user_agent}', '$OS', '$location', '$_PROXY', '{$member_id['foto']}', '{$member_id['user_group']}') ON DUPLICATE KEY UPDATE `key`=VALUES(`key`), `uid`=VALUES(`uid`), `uname`=VALUES(`uname`), `user_agent`=VALUES(`user_agent`), `foto`=VALUES(`foto`), `OS`='$OS', `proxy`='$_PROXY', `time`='$_TIME', `location`='$location', `user_group`=VALUES(`user_group`)");
  12. } else {
  13.  
  14. $robot = $online_api->check_robot($_UA);
  15.  
  16. if($robot != '')
  17. {
  18. $key = md5($robot.$_IP);
  19. // 2 Odwołanie
  20. $db->query("INSERT INTO `".PREFIX."_online` (`key`, `uid`, `uname`, `time`, `ip`, `user_agent`, `os`, `location`, `proxy`, `foto`, `user_group`) VALUES ('{$key}', '0', 'robot', '$_TIME', '{$_IP}', '$robot', 'unknown', 'unknown', 'unknown', '/engine/skin/images/online/icon_root.png', 'unknown') ON DUPLICATE KEY UPDATE `key`=VALUES(`key`), `time`=VALUES(`time`)");
  21. } else {
  22. $key = md5("guest".$_IP);
  23. $db->query("INSERT INTO `".PREFIX."_online` (`key`, `uid`, `uname`, `time`, `ip`) VALUES ('{$key}', '0', 'guest', '$_TIME', '{$_IP}') ON DUPLICATE KEY UPDATE `uid`='0', `uname`='guest', `user_agent`='unknown', `foto`='unknown', `OS`='unknown', `proxy`='unknown', `time`='$_TIME', `location`='unknown', `user_group`='unknown'");
  24. }
  25. }


Teraz specyfikacja serwera:
PHP: 7.0.7
Wersja MySQL: 5.5.32-cll MySQLi
Kodowanie bazy danych: utf8_general_ci

Poniżej daję link do zrzutu ekranu do struktury tej tabeli
https://i.imgur.com/T8QTdYg.png



Normalnie to by było już po sprawie ale moduł ten odnowiony dałem na stronę gdzie nigdy takiego nie było i w ciągu 2 dni w opisie strony w wynikach wyszukiwania pojawił mu się taki błąd...
Może mam coś nie tak z budową tej tabeli albo coś jest nie tak w wywołaniu bazy... może wy coś znajdziecie

Ten post edytował alkesz1718 19.01.2018, 02:27:05
Go to the top of the page
+Quote Post
Pyton_000
post 19.01.2018, 09:21:38
Post #23





Grupa: Zarejestrowani
Postów: 7 319
Pomógł: 1292
Dołączył: 26.10.2005

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


Nie te zapytania podałeś... Błąd masz ewidentnie w zapytaniu SQL ale nie w tym. I na dodatek z przecinkiem o którym Ci już mówiłem.
Go to the top of the page
+Quote Post
alkesz1718
post 19.01.2018, 11:59:56
Post #24





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 8.12.2014
Skąd: Czernina

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


Tamtego zapytania już nie ma, zrobiłem nowe zapytanie co jest wyżej podane z względów nie wyświetlania wszystkich informacji w bloku ale nigdzie nie brakuje tego przecinka a w wyszukiwarce nadal pojawia się błąd...
Go to the top of the page
+Quote Post

2 Stron V  < 1 2
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 27.05.2018 - 18:45