From:             [EMAIL PROTECTED]
Operating system: Windows ME
PHP version:      4.0.4pl1
PHP Bug Type:     Arrays related
Bug description:  Having an array and other variables as parameters to a fonction

Hi.

        function search_query($mot_recherche, $champs_de_recherche, $mot_complet = "") 
{
                if (empty($mot_complet)) $nouveau_mot_recherche = split(" 
",$mot_recherche);
                else $nouveau_mot_recherche = $mot_recherche;
                $m = "";
                for($i=0; $i<count($nouveau_mot_recherche); $i++) {
                        for ($j = 0; $j<count($champs_de_recherche); $j++) {
                                $m .= $champs_de_recherche[$j]." LIKE 
'%".$nouveau_mot_recherche[$i]."%'";
                                if ($j == (count($champs_de_recherche)-1)) {
                                        if ($i<(count($nouveau_mot_recherche)-1)) $m 
.= " OR ";
                                }
                                else $m .= " OR ";
                        }
                }
                return $m;
        }

This fonction return a part of a MySQL query where I can search for any word of a 
sentence (contained in $mot_recherche which is copied to $nouveau_mot_recherche 
depending the value of $mot_complet. $mot_complet means (it is in french, sorry 
folks!) that if it is not empty, I want to search for the complete sentence in my DB.) 
I placed $mot_complet at the end of my argument so I don't always have to specify it. 
Fact is that $champs_de_recherche (which means field_of_search) that contains every 
field names I want to search in have an additionnal value that is $mot_complet. 
Imagine: if mot_complet equal "true", which means I want to search for a complete 
sentence in my DB, I'll have to search in every fields listed in $champs_de_recherche 
AND in the field name by the value of $mot_complet (where it is now "true"). So it 
will give me:

field LIKE '%$nouveau_mot_recherche%' OR... true LIKE '%nouveau_mot_recherche%'...

Understand what is the problem? I don't know if it is a real bug or if it's my code 
that is wrong. But having an array as a parameter in a fonction is useful and having 
additionnal values in this array that are every parameters declared after this array 
is abnormal.

I've search for a solution the documentation and it seems that there is no topic about 
this.

Anyway, I'm trying to modify my code so it will be working fine...


-- 
Edit Bug report at: http://bugs.php.net/?id=9300&edit=1



-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to