PDA

Zobacz pełną wersję : błąd przy wyszukiwaniu



wini74
20-02-2015, 17:36
Witam.
Strona na intranecie. Ogólnie nie było problemu z prostym wyszukiwaniem ale przez przypadek wpisałem w wyszukiwarce "żaba" i otrzymałem taki błąd:

Error: 1267 - Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'like' SQL=SELECT det.evdet_id, det.summary as title, ev.created as created, CONCAT(det.summary, ' ', det.description, ' ', det.location, ' ', det.contact, ' ', det.extra_info) as text, CONCAT('Events Calendar','/',det.summary) AS section, CONCAT('index.php?option=com_jevents&task=icalrepeat.detail&evid=',min(rpt.rp_id)) AS href, '2' AS browsernav , rpt.startrepeat, rpt.rp_id FROM (hpawe_jevents_vevent as ev) LEFT JOIN hpawe_jevents_repetition as rpt ON rpt.eventid = ev.ev_id INNER JOIN hpawe_categories AS b ON b.id = ev.catid LEFT JOIN hpawe_jevents_vevdetail as det ON det.evdet_id = rpt.eventdetail_id LEFT JOIN hpawe_jevents_icsfile as icsf ON icsf.ics_id = ev.icsid WHERE ((LOWER(det.summary) LIKE '%żaba%' OR LOWER(det.description) LIKE '%żaba%' OR LOWER(det.location) LIKE '%żaba%' OR LOWER(det.contact) LIKE '%żaba%' OR LOWER(det.extra_info) LIKE '%żaba%')) AND icsf.state = 1 AND icsf.access IN (1,1,2,3,6) AND ev.state = 1 AND ev.access IN (1,1,2,3,6) AND b.access IN (1,1,2,3,6) AND b.published = '1' AND ev.state=1 AND ev.catid IN(-1,22,23,24,25) GROUP BY det.evdet_id ORDER BY det.created DESC LIMIT 50


nie bardzo rozumiem o co chodzi, wydaje mi się, że problem może być tutaj: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE). Zauważyłem, że w bazie posiadam 2 kodowania latin oraz utf8

wini74
20-02-2015, 20:49
Prawdopodobnie przyczyną jest plugin Search - JEvents, gdyż po jego wyłączeniu wszystko wraca do normy. Zmieniłem kodowanie dla wszystkich rekordów bazy danych na utf8_general_ci i także nic nie pomogło. Co ciekawe w Jevents w wydarzeniach brak polskich znaków poza "ó"