Ik ben bezig met een database in mysql.
Met php het k et voor elkaar gekregen:
toe te voegen, up te daten en te verwijderen.
Nu wil ik nog graag een zoekfunctie, maar dit wil niet helemaal lukken.
Als sql query heb ik nu:
("Select tags, uitleg from vrienden where tags like '%"$tag"%'")
De database heet dus vrienden. k zou ook graag willen weten hoe ik die naam wijzig.
Er wordt gezocht naar een tag, maar hij doet het alleen als je de voledig naam intikt. De bedoeling is dat hij het ook doet als het er op lijkt en dat hij kan zoeken op een deel van de uitleg, zonder dat je de voledige uitleg precies in hoeft te tikken.
Ja, tuurlijk is dat mogelijk, alleen krijg je dan wel 2 sets resultaten...
Ik zou het denk ik als volgt oplossen:
<?php
if(isset($tag) || isset($uitleg))
{
$sql = "SELECT tags, uitleg FROM vrienden";
if(!empty($tag) && !empty($uitleg))
{
$sql .= " WHERE tags LIKE '".$tag."' OR uitleg LIKE '".$uitleg."'";
}
elseif(!empty($tag))
{
$sql .= " WHERE tags LIKE '".$tag."'";
}
else
{
$sql .= " WHERE uitleg LIKE '".$uitleg."'";
}
}
else
{
// Hier de foutmelding als beide variablelen leeg zijn...
}
?>
hallo, daar was ik weer. Ik heb nog een tijdje doorgeprobeerd op het script hierboven, maar om de een of andere reden werkt hij nu helemaal niet meer. Er wordt niks meer weergegeven, ook geen foutmelding. Hieronder staat het script zoals het er nu uit ziet:
if(!empty($tag) && !empty($uitleg))
{
$sql .= " WHERE tags LIKE '".$tag."' OR uitleg LIKE '".$uitleg."'";
}
elseif(!empty($tag))
{
$sql .= " WHERE tags LIKE '".$tag."'";
}
else
{
$sql .= " WHERE uitleg LIKE '".$uitleg."'";
}
}
else
{
//echo(Hier de foutmelding als beide variablelen leeg zijn...)
}
Wie kan me helpen om het toch goed te krijgen? De variabelen worden in een andere php bestand ingevoerd. Door op de knop zoeken te klikken, zou het moeten lukken (invoer balk voor tags en uitleg appart), maar hij zoekt dus nog niet goed.