у меня есть бд, в ней несколько таблиц
но у меня не получается правильно организовать поиск! помогите!
вот сам скрипт поиска
$db = mysql_connect('localhost','root','');
mysql_select_db('arenda', $db);
mysql_query('SET character_set_database = utf8');
mysql_query('SET NAMES utf8');
$text = $_POST['poisk'];
$text = strtolower($text);
if ($_POST['ok'])
{
$result = mysql_query ("SELECT * FROM arenda WHERE (locate('$text',lower(title)) > 0)
UNION SELECT * FROM arenda WHERE (locate('$text',lower(text)) > 0)")
or die (mysql_error ());
$db_arenda = mysql_fetch_array($result);
echo "
<br>
<left><font size=5 style='font-style:italic; color: #3300FF' ><b>Результаты поиска:
</b></font></left> ";
$nums = mysql_num_rows ($result);
if ($nums == "0" || empty ($nums))
{
echo "<p style='font-style:italic; color: #3300FF'>По
Вашему запросу ничего не найдено!</p>";
}
else
echo "<p style='font-style:italic; color:#3300FF'>По Вашему запросу найдено $nums записей</p> <br>";
$i=0;
do
{
echo "<p align = justify>".$db_arenda['title']."</p>
<p align = justify>".$db_arenda['text']."</p>";
$i++;
}
while ($db_arenda = mysql_fetch_array($result));
}
Спустя 1 час, 17 минут, 1 секунда (28.07.2010 - 16:09) sergeiss написал(а):
tania88-88 - просьба оформлять код специальными тэгами. Так он намного лучше читается. И с табуляторами поаккуратнее Пришлось мне их чистить, иначе код "танцевал" весь.
PS. И еще. Иди сначала в тему http://phpforum.ru/index.php?showtopic=21916, почитай, как с БД работать ПРАВИЛЬНО. И забудь про цикл do-while при выборке данных из БД, забудь про эту "поповщину и бесовщину"
PS. И еще. Иди сначала в тему http://phpforum.ru/index.php?showtopic=21916, почитай, как с БД работать ПРАВИЛЬНО. И забудь про цикл do-while при выборке данных из БД, забудь про эту "поповщину и бесовщину"
Спустя 4 часа, 51 минута, 24 секунды (28.07.2010 - 21:01) linker написал(а):
А можно вопрос? Какая необходимость в таком вот странном запросе?
SELECT * FROM arenda WHERE (locate('$text',lower(title)) > 0)Ведь человечество изобрело такие вещи как: and, or, not. Ну хотя бы как минимум:
UNION
SELECT * FROM arenda WHERE (locate('$text',lower(text)) > 0)
SELECT * FROM arenda WHERE title LIKE '%$text%' or text LIKE '%$text%'
Спустя 7 минут, 27 секунд (28.07.2010 - 21:08) Basili4 написал(а):
linker
Человечество изобрело но Попову об этом никто не доложил. К упущение-с. -1 Человечеству
Человечество изобрело но Попову об этом никто не доложил. К упущение-с. -1 Человечеству