Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 18.02.2009 Ostrzeżenie: (0%)
|
Witam.
Mam dwa problemy! Zacznę od pierwszego bardziej istotnego (pod względem mojej bezradności). Napisałem sobie prosty kodzik wyciągający z bazy danych MySQL wartość tabeli zapytanie wygląda mniej więcej tak:
a $fraza = '%'.$_GET['klucz'].'%'; niestety operator LIKE nie działa no i w tym przypadku nie mam pojęcia dlaczego <IMG src="style_emoticons/default/sad.gif" emoid=":(" border="0" style="vertical-align: middle"> Oto kod z małym komentarzem Kod $ofe="";$typ=""; $fraza = "%".$_GET['klucz']."%"; $branza = "$_GET['branza']; switch($_GET['r']){ //tutaj sobie sprawdzam rozne warunki dla ktorych daje rozne zapytania /*...*/ case 's': //trafiam na interesujacy mnie fragment kodu $ofe = "- Wyszukiwanie"; //ustawiam jakis tytul (nieistotne) $typ = 6; //ustawiam typ (nieistotne w tym przypadku) $zapytanie = mysql_query("SELECT * FROM nazwa_tabeli WHERE data >= '$data' AND branza = '$branza' AND sta LIKE '$fraza' ORDER BY id_o DESC") or die(...); /*zapytanie nie zwraca żadnych rezultatow nawet jesli zamiast $fraza wpisze %a% natomiast bez LIKE wszystko dziala ladnie i pięknie*/</P><P>break; /*...*/ } /*...*/ while($wykonaj = mysql_fetch_row($zapytanie)){ /*...*/} Drugi problem polega na źle dobranym kodowaniu bazy danych (być może jego wynikiem jest problem pierwszy ;p Kodowanie bazy ustawiałem na utf-8-polish-ci i latin-2-general-ci o ile sie dobrze orientuje one obsluguja polskie znaki. Swoj skrypcik mam kodowany na utf-8 (Bez BOM cokolwiek by to mialo znaczyć (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) . Jak bym nie zapisał rekordów w bazie to i tak pojawiają sie krzaczki (zamiast polskich znaków oczywiście) przy odczycie przez skrypt. Z góry dziękuję za odpowiedzi. Ten post edytował mpawel007 3.08.2009, 21:11:44 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Cytat iestety operator LIKE nie działa no i w tym przypadku nie mam pojęcia dlaczego Tzn? Nic nie zwraca? Cytat Drugi problem polega na źle dobranym kodowaniu bazy danych (być może jego wynikiem jest problem pierwszy ;p Kodowanie bazy ustawiałem na utf-8-polish-ci i latin-2-general-ci o ile sie dobrze orientuje one obsluguja polskie znaki. Swoj skrypcik mam kodowany na utf-8 (Bez BOM cokolwiek by to mialo znaczyć Z polskimi znakami via GET jest problem, wysyłaj przez POST. |
|
|
|
mpawel007 [php/MySQL] LIKE / kodowanie bazy danych 3.08.2009, 21:09:09
mpawel007 Cytat(erix)Tzn? Nic nie zwraca?
na przykład jeśli ... 3.08.2009, 22:24:32
erix Ale każda przeglądarka koduje znaki w GE... 4.08.2009, 11:49:48
mpawel007 Właśnie wklepałem w phpMyAdmina to ... 4.08.2009, 22:29:18
Kofel Co do krzaczków z bazy:
SET NAMES 'utf8';... 5.08.2009, 08:57:56
janusz85 Cytat(mpawel007 @ 3.08.2009, 22:09:09... 5.08.2009, 09:23:51
mpawel007 Cytat(janusz85 @ 5.08.2009, 10:23:51 ... 5.08.2009, 15:33:38 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 19:43 |