Zoeken maar niet hoofdletter gevoelig!

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Kees Mulder

Kees Mulder

16/06/2014 15:07:09
Quote Anchor link
Ik heb een website waarop je kan zoeken op de pagina's (uit tabel in dbase) alleen is hij nu hoofdletter gevoelig. Hoe kan ik dit oplossen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
        <?php

        if(isset($_POST["zoek"]) && !empty($_POST["zoek"])){
        
        $gestuurd = strip_tags(addslashes($_POST["search"]));
        
        $sql5 = "SELECT
                *
            FROM
                websitepagina
            WHERE    
                (pagina_omschrijving LIKE '%"
. $gestuurd . "%'
            OR
                pagina_omschrijving_2 LIKE '%"
. $gestuurd . "%')
            ORDER BY
                pagina_titel ASC"
;
        
            $query5 = mysql_query($sql5);
        
        
            if(mysql_num_rows($query5) < '1'){
            
            echo ("");
            }

        
            else {
        
            echo '<div id="box-content">';
            echo "<h2>Pagina's</h2>";
}

?>
 
PHP hulp

PHP hulp

19/09/2019 05:26:21
 
NOLot -

NOLot -

16/06/2014 15:13:59
Quote Anchor link
Wat heb je zelf al geprobeerd, en waarom is het niet gelukt?

Zie:

http://stackoverflow.com/questions/2876789/case-insensitive-for-sql-like-wildcard-statement
http://stackoverflow.com/questions/14007450/how-do-you-force-mysql-like-be-case-sensitive?lq=1
http://stackoverflow.com/questions/8083455/mysql-like-case-sensitive

Edit: zo te zien zou dit dus in theorie moeten werken:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php

        if(isset($_POST["zoek"]) && !empty($_POST["zoek"])){
        
        $gestuurd = strip_tags(addslashes($_POST["search"]));
        
        $sql5 = "SELECT
                *
            FROM
                websitepagina
            WHERE    
                (pagina_omschrijving COLLATE UTF8_GENERAL_CI LIKE '%"
. $gestuurd . "%'
            OR
                pagina_omschrijving_2 COLLATE UTF8_GENERAL_CI LIKE '%"
. $gestuurd . "%')
            ORDER BY
                pagina_titel ASC"
;
        
            $query5 = mysql_query($sql5);
        
        
            if(mysql_num_rows($query5) < '1'){
            
            echo ("");
            }

        
            else {
        
            echo '<div id="box-content">';
            echo "<h2>Pagina's</h2>";
}

?>
Gewijzigd op 16/06/2014 15:15:00 door NOLot -
 
Kees Mulder

Kees Mulder

16/06/2014 15:20:18
Quote Anchor link
Dank en het werkt inderdaad met COLLATE UTF_8 GENERAL CI
 
- SanThe -

- SanThe -

16/06/2014 15:31:57
Quote Anchor link
Waarom strip_tags(addslashes(...)) en geen mysql_real_escape_string(..)?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.