Søg i 1 tabel med 3 søge ord
Jeg har kigge lidt rundt på siden her inde men kan ikke rigtig få det til at funger.Jeg vil gerne have muligheden for at søge i 1 tabel, 3 Feltnavn med 3 forskellige søge ord" altså 1 søgeord i vær Feltnavn" .
Koden ser sådan ud:
<?php
include "config.php";
$navn = $_GET["navn"];
$tekst = $_GET["tekst"];
$titel = $_GET["titel"];
if (isset($submit)) {
$tmparray = array;
if(!empty($navn) {
$tmparray[] = "navn LIKE '%$navn%'";
}
if(!empty($titel) {
$tmparray[] = "titel LIKE '%$titel%'";
}
if(!empty($tekst) {
$tmparray[] = "titel LIKE '%$tekst%'";
}
$sql = "SELECT navn, titel, titel FROM riberep_gaestebogi WHERE ";
$sql .= implode(" AND ", $tmparray);
//echo $sql; -se hvordan sql'en ser ud!
$result = mysql_query($sql) or die(mysql_error());
while (list($navn, $titel, $titel) = mysql_fetch_row($result)) {
echo "$navn<br>$titel<br>$tekst<br>";
}
?>
Navn:<br>
<form name="Søg" method="post" action="<?php $PHP_SELF ?>">
<input type="input" name="navn" value=""><p>
Titel:<br>
<input type="input" name="titel" value=""><p>
Tekst:<br>
<input type="input" name="tekst" value=""><p>
<input type="submit" name="submit" value="Søg"><p>
</form>
Den her forrespørgelse i MYSQL virker efter planen
SELECT *
FROM `riberep_gaestebogi`
WHERE `navn` LIKE CONVERT( _utf8 '%steffen%'
USING latin1 )
COLLATE latin1_swedish_ci
OR `tekst` LIKE CONVERT( _utf8 '%steffen%'
USING latin1 )
COLLATE latin1_swedish_ci
OR `titel` LIKE CONVERT( _utf8 '%steffen%'
USING latin1 )
COLLATE latin1_swedish_ci
LIMIT 0 , 30
