|
|
|
| Вообщем написал БД в мускуле. Вот надо мне совершить поиск по полю, хочу сделать это через FULLTEXT. Но тока чето какие то error-ы пошли.
Версии: PHP 5, MySQL 5
Вот create db (вроде все работает)
@mysql_query("create table if not exists users (
id_user int not null auto_increment,
name tinytext not null,
passw tinytext not null,
fulltext(name);
primary key (id_user) )")
|
Код в скрипте:
<?
if ($_POST['sub'])
{
include ("config.php"); // соединение с сервером и выбор бд
$text = $_POST['text'];
$result = mysql_query("select * from users where MATCH (name) AGAINST ('$text')");
$count = mysql_num_rows($result);
echo $count;
}
?>
<form method="post">
text <input type="text" name="text">
<input type="submit" name="sub" value="sub">
</form>
|
Ошибка:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\ind.php on line 13[
|
13-ая строка: $count = mysql_num_rows($result);
Подскажите что поменять чтоб исправить ошибку. | |
|
|
|
|
|
|
|
для: Saveliy
(23.01.2008 в 01:05)
| |
$count = mysql_num_rows($result);
|
поменять на
$count = @mysql_num_rows($result);
|
не будет кричать об ошибке =)
а кричит потому, что не нашёл. | |
|
|
|
|
|
|
|
для: Lstasss
(23.01.2008 в 02:36)
| | Ну вот ошибка пропала, только он ничего не находит :-(. Вроде слова одинаковые, что в бд , что в поле, а переменная $count выдает результат = 0. | |
|
|
|
|
|
|
|
для: Saveliy
(23.01.2008 в 02:55)
| | create table if not exists users (
id_user int not null auto_increment,
name tinytext not null,
passw tinytext not null,
fulltext(name),
primary key (id_user)
) engine=myIsam; | |
|
|
|
|
|
|
|
для: Lstasss
(23.01.2008 в 02:36)
| | Замечательный способ! Вы все ошибки так исправляете?
Кричит потому, что запрос возвращает ошибку. И для начала неплохо бы ее вывести на экран. | |
|
|
|
|
|
|
|
для: Saveliy
(23.01.2008 в 01:05)
| | SELECT-запросы, в которых имеются динамические фрагменты (да и без них тоже) лучше всегда обрабатывать на предмет ошибок
<?
if ($_POST['sub'])
{
include ("config.php"); // соединение с сервером и выбор бд
$text = $_POST['text'];
$result = mysql_query("select * from users where MATCH (name) AGAINST ('$text')");
if(!$result) exit(mysql_error());
$count = mysql_num_rows($result);
echo $count;
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(23.01.2008 в 13:15)
| | Вы знаете он не показывает ошибки. Может быть надо подстроить конфиг. файл или что нить с кодировками | |
|
|
|