W tabeli geoip mam zapisane przedziały adresów IP zakodowane przez funkcję ip2long();
Teraz podczas identyfikacji mam mały problem, ponieważ gdy chcę zidentyfikować adres IP w postaci XX.XX.XX.XX, nie dam rady, ponieważ wcześniej muszę go przekonwertować do postaci ip2long.
Moje zapytanie wygląda tak:
SELECT u.*, gi.ip_country FROM users u LEFT JOIN geoip gi ON gi.ip_start<=u.user_ip AND gi.ip_end>=u.user_ip ORDER BY u.user_id DESC;
Tutaj:
Kod
gi.ip_start<=u.user_ip AND gi.ip_end>=u.user_ip
potrzebuję zastosować ip2long
Kod
gi.ip_start<=ip2long(u.user_ip) AND gi.ip_end>=ip2long(u.user_ip)
Jednak w żadnych kombinacjach (z ", ' itp) nie działa.
Jest w ogóle możliwe takie zastosowanie?