Hallo mensen,

Ik heb dus een zoekfunctie op mijn website maar ik kan nergens een code vinden waardoor men minimaal 2-3 tekens moet invoeren voor de zoekmachine het doet.

Als iemand mij hiermee kan helpen dan zou ik dit erg op prijs stellen.
<?php
if(strlen($_GET['q']) < 2)
{
echo "Je Search-query moet minimaal 2 tekens bevatten.";
}
else
{
//Zoeken
}
?>
<?php
if(strlen($_GET['q']) < 2)
{
$_GET['q'] = "**" . $_GET['q'];
}
// zoeken maar!
?>

Waarschijnlijk gebruik je dezelfde mysql-manier van zoeken als ik. En ik wil dat mensen wel kunnen zoeken op een kort woord (bijvoorbeeld "ei").
Dus plak ik er jokers (*) voor. Dan heeft sql niets te zeuren en het beinvloed de resultaten niet ;).
oke thanks kzal et morgen proberen
Snellere manier zou zijn:

<?php
if( !isset( $_GET['q'][1] ) ) { // Dit lijkt inderdaad op een subarray maar het vraagt het 2de teken van een string op
   echo 'Zoekgedoe moet minstens 2 tekens lang zijn.';
}
Fout eigenlijk...

strlen(); is leuk als je ook daadwerkelijk de lengte nodig hebt... hier dus niet echt... als hij maar 3 is, dus het snelste zou zijn:

<?php
if($_GET['q']{2}){}
?>

$_GET['q'][1] is volgens mij geen geldige syntax.. zeker niet als je error_reporting aan gaat zetten lijkt me...

Vanaf PHP 5.3 en PHP 6.0, vervalt de curly bracket syntax voor tekens uit een string opzoeken, deze manier werkt nu al en is de manier die de voorkeur heeft boven die met de curly brackets.

Reageren