<?php
//error_reporting(E_ALL);
if(!$_GET['c']) {
?>
<form action='advs.php?c=1' method=POST>
<b>Find Results with: </b><br>
Any of these words: <input type='text' length=40 name='any'> <br>
All of these words: <input type='text' length=40 name='all'> <br>
None of these words: <input type='text' length=40 name='none'> <br>
<input type='submit' value='Search'>
</form>
<?php
} elseif($_GET['c']) {
include_once 'config.php';
include_once 'functions.php';
connectdb();
$all = $_POST['all'];
$any = $_POST['any'];
$none = $_POST['none'];
if((!$all) || ($all == '')) { $all = ''; } else { $all = '+(' . $all . ')'; }
if((!$any) || ($any == '')) { $any = ''; }
if((!$none) || ($none == '')) { $none = ''; } else { $none = '-(' . $none . ')'; }
$query = "SELECT *,
MATCH(body) AGAINST ('" . $all . $none . $any . "' IN BOOLEAN MODE) AS score
FROM db6
WHERE MATCH(body) AGAINST ('" . $all . $none . $any . "' IN BOOLEAN MODE)";
$artm1 = MySQL_query($query);
if(!$artm1) {
echo MySQL_error().'<br>' . $query . '<br>';
}
echo '<b>Matches</b><br>';
if(MySQL_num_rows($artm1) > 0) {
echo '<table>';
echo '<tr><td>Score </td><td>Title </td><td>Body</td></tr>';
while($artm2 = MySQL_fetch_array($artm1)) {
$val = round($artm2['score'], 3);
$val = ($val*100);
echo '<tr><td>' . $val . '</td>';
echo '<td>' . $artm2['poster'] . '</td>';
echo '<td>' . $artm2['body'] . '</td></tr>';
}
echo '</table>';
} else {
echo 'No Results were found in this category.<br>';
}
echo '<br>';
}
?>
1.430 views
Ik gebruik dit script om door de tabel 'db6' te zoeken, maar ik vroeg me af of het ook mogelijk was om te zoeken door meerdere tabellen (db1..db6) bij elkaar. Weet iemand hoe dat moet? Ik ben een beetje mysql noob ik doe alleen het hoognodige ermee :P