Autor Zpráva
melonka
Profil *
Dobrý den,
pracuji na vyhledávacím formuláři - který má vyhledat jméno v databázi. Když zadám do vytvořeného vyhledáváče malé písmeno, které se nachází někde v jméně, tak všechno vyhledá v pořádku. Problém nastává v okamžiku, kdy chci zadát jméno bez ohledu na velká písmena jako např. v databázi mám Martin a napíši martin, tak mi nic nenalezne. Nic nenalezne ani když přeházím pořadí písmenek. Existuje nějaký příkaz, který by "neřešil" velká a malá písmena? Nebo v případě, jestli jsem neudělala nějakou chybu:

<?php
//připojení k databázi probělo
 
$term = $_POST['term'];                                           
                                                                     
$sql = "Select * from polozka WHERE kontaktni_osoba LIKE '%$term%'";  
$result = mysql_query($sql);
 
while ($row = mysql_fetch_array($result)){
    echo 'ID: '.$row['id_polozky'];
     echo '<br/> Typ: '.$row['typ_typ'];
    echo '<br/> Název firmy: '.$row['nazev_firmy'];
    echo '<br/> Kontaktní osoba: '.$row['kontaktni_osoba'];
    echo '<br/> Mobil: '.$row['mobil'];
     echo '<br/> Pevná: '.$row['pevna'];
      echo '<br/> Fax: '.$row['fax'];
       echo '<br/> Email: '.$row['email'];
        echo '<br/> Adresa: '.$row['adresa'];
         echo '<br/> Stavbyvedoucí: '.$row['stavbyvedouci'];
          echo '<br/> IČO: '.$row['ico'];
           echo '<br/> DIČ: '.$row['dic'];
            echo '<br/> WWW stránky: '.$row['www_stranky'];
             echo '<br/> Velikost firmy: '.$row['velikost_firmy'];
              echo '<br/> Činnost firmy: '.$row['cinnost_firmy'];
    echo '<br/><br/>';
    }
 
?>





Taps
Profil
melonka:
zkus
$sql = "Select * from polozka WHERE kontaktni_osoba LIKE '%$term%' COLLATE utf8_czech_ci";  
melonka
Profil *
Taps:
Vypíše chybu.

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\mso\term.php on line 15
melonka
Profil *
[#2] Taps
Jo...chybu jsem si opravila. Ale problém se nevyřešil. Díky za nápad.
CZechBoY
Profil
jaké je kodování té tabulky?
používám utf8_czech_ci a funguje v pohodě :)
případně převést oba řetězce na malé písmena

$term=StrToLower($term);
$sql = "Select * from polozka WHERE LCASE(kontaktni_osoba) LIKE '%$term%'";  
melonka
Profil *
Díky, bylo to opravdu tím, že jsme si musela řetězec převést na malé písmena.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0