Siriuss2007
Новичок
Подскажите пожалуйста готовое решение, как можно осуществить поиск по нескольким таблицам одной БД с последующим выводом результатов.
Заранее благодарен.
Заранее благодарен.
Создай 5 таблиц с полем num, заполни их произвольными цифрами.c0dex Если я правильно понял необходимо написать запрос под каждую таблицу, 5 таблиц => 5 запросов?
Я все же хотел бы посмотреть на образец готового алгоритма.
<?php
/* 1 - Поиск по таблице Infra_structura*/
$result = mysql_query ("SELECT id, title FROM Infra_structura WHERE MATCH (text) AGAINST ('$find')",$db);
if (mysql_num_rows ($result) > 0)
{
$myrow = mysql_fetch_array ($result);
/* Цикл вывода */
do
{
printf ("<p class='view_name_cat'><a href='View_post.php?id=%s'>%s</a></p>", $myrow["id"], $myrow["title"]);
}
while ($myrow = mysql_fetch_array ($result));
}
?>
$result = mysql_query ("SELECT id, title FROM Infra_structura WHERE MATCH (text, adress, title) AGAINST ('$find')",$db);
<?php
include ("block/bd.php"); /* Подключаю базу */
if (isset($_POST['submit_find'])) { $submit_find = $_POST['submit_find']; }
if (isset($_POST['find'])) { $find = $_POST['find']; }
if (isset ($submit_find))
{
if (empty ($find) or strlen($find) < 4)
{
exit ("<p>Поисковый запрос не введен или он менее 4-х символов.</p>");
}
$find = trim ($find); /* Убираем лишние пробелы */
$find = stripslashes ($find); /* Безопасность от слеша в поиске */
$find = htmlspecialchars ($find); /* Безопасность от html кода в поиске */
}
else
{
exit("<p>Вы хотите осуществить поиск БЕЗ необходимых параметров</p>");
}
?>
echo ("Поисковое слово - $find");
/* 1 - Поиск по таблице Infra_structura */
$result = mysql_query ("SELECT id, title FROM Infra_structura WHERE MATCH (text) AGAINST ('$find')",$db);
if (mysql_num_rows ($result) > 0)
{
$myrow = mysql_fetch_array ($result);
/* Цикл вывода */
do
{
printf ("<p class='view_name_cat'><a href='View_post.php?id=%s'>%s</a></p>", $myrow["id"], $myrow["title"]);
}
while ($myrow = mysql_fetch_array ($result));
}
else
{
/* Если результат =0 */
$null_rezult = 1;
}
/* 2 - Поиск по таблице History */
$result = mysql_query ("SELECT id, title FROM History WHERE MATCH (text) AGAINST ('$find')",$db);
if (mysql_num_rows ($result) > 0)
{
$myrow = mysql_fetch_array ($result);
/* Цикл вывода */
do
{
printf ("<p class='view_name_cat'><a href='View_history.php?id=%s'>%s</a></p>", $myrow["id"], $myrow["title"]);
}
while ($myrow = mysql_fetch_array ($result));
}
else
{
/* Если результат =0 */
$null_rezult = $null_rezult + 1;
}
/* Если ничего нет */
if ($null_rezult==7)
{
printf ("<div align='center'><img src='img/null_result.gif' alt='информации нет' /></div>");
echo "<p><strong>Извените информацию которую Вы ищите на сайте отсутствует</strong>.</p>
<p><strong>Попробуйте переформулировать поисковое слово</strong>.</p><br><br>";
}
else
{
exit ();
}
?>