Zoeken in database (vraag)

Status
Niet open voor verdere reacties.

brownmouse

Gebruiker
Lid geworden
6 jul 2007
Berichten
497
Hee,

heb ik denk nog 1 klein vraagje.
ik heb ook een zoek machine op me website.

en als ik daar 't nummer intik doet hij da zoeken maar niet als ik artiest in typ.
is er een optie om ook voor artiest te maken?

dus 1 input voor 2 zoektermen?

PHP:
<?php
    //-- natuurlijk moet er eerst een connectie met de database worden gemaakt:
    if (!@mysql_select_db("db", @mysql_connect("host", "name", "pass")))
    {
        echo "Er kan geen database connectie gemaakt worden.";
        exit();
    }

    //-- $HTTP_POST_VARS[zoekterm] is de naam van het zoekveld in het formulier wat we
    //-- hebben gemaakt in het vorige 'hoofdstuk'. Dit is dus de SQL code:
    $sql = "SELECT artist,id,title,genre FROM downloads WHERE artist LIKE '%" . mysql_real_escape_string($_POST['zoekterm']) . "%'";

    //-- voer de SQL code uit en zet dit in een variabele zodat we zometeen kunnen
    //-- kijken of er een resultaat is
    $res = mysql_query($sql);

    //-- bekijk nu of er een resultaat is, of het zoekwoord dus gevonden is of niet
    if (mysql_num_rows($res) >= 1)
    {
        //-- er is een resultaat gevonden, toon de resultaten via een while () loop
        while ($row = mysql_fetch_array($res))
        {
            echo "<table><tr><li><td width=350><a href=music/track.php?pagina=$row[id]&artist=$row[artist]><b>$row[artist]</b> - $row[title]</a></td><td>(<a href=genre.php?genre=$row[genre]>$row[genre]</a>)</li></td></tr></table>";
			echo "";
        }

        echo "<br /><a href=\"zoek-dj.php\" title=\"zoek opnieuw\">zoek opnieuw</a>";
    }
    //-- als er geen resultaat is gevonden, dus als het zoekwoord niet gevonden is:
    else
    {
        echo "<p>Er is niets gevonden op jou zoekterm:<b> $HTTP_POST_VARS[zoekterm]</b></p>";

        echo "<p><a href=\"zoek-dj.php\" title=\"zoek opnieuw\">zoek opnieuw</a></p>";
    }
?>
 
Als je een manier hebt om onderscheid te maken tussen artiest en nummer kan dat wel. Je kunt ook standaard op allebei zoeken.

Dan zul je of de query uit moeten breiden (met een nummer LIKE $var OR artiest LIIKE $var) of je moet een extra veld toevoegen waar de gebruiker aangeeft of hij een artiest of een nummer wil zoeken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan