Помогите сделать поиск по ДБ

R00miss

Guest
Вот так пишу чтоб разбить на страницы:
PHP:
$db=mysql_connect("localhost","***","***"); 
mysql_select_db("dbpoems",$db);
$amount = @mysql_result(mysql_query("SELECT count(author_id) FROM poems", $db),0);
Потом чтоб вывести:
PHP:
$result = mysql_query("SELECT A.lastname, A.firstname, P.* FROM Authors A, Poems P WHERE A.id=P.author_id AND A.firstname='$first' AND  A.lastname='$last' order by $order". get_limit($pg, $amount, $entries),$db);
и т.д.
 

RomikChef

Guest
ну так а где здесь where?
в первом запросе - вот в этом:
SELECT count(author_id) FROM poems
 

R00miss

Guest
упс... там нада SELECT count(id) FROM poems
ну так вот, если подставляешь SELECT count(author_id) FROM poems where firstname=$first и т.п. то все записи на одной странице получаются... даже если where пустой поставить...
хотя я во что то не врубаюсь... :) плиз объясни
 

RomikChef

Guest
а я откуда знаю???
я знаю только одно, что правильный подсчет общего количества записей никак не может повлиять на вывод всего на одной странице.
проверь, что у тебя возврращает$amount
 

R00miss

Guest
постраничный вывод я взял от сюда - http://detail.phpclub.net/2001-04-28.htm ....
 

R00miss

Guest
все, врубился :)
Заработало все... СПАСИБО за все ваши мучения со мной :)

еще вопросик... как сделать так:
if (запись в базе есть){echo "go!";}
else {echo "";} ?
 

RomikChef

Guest
ночью пришла мысль написать тебе, что постраничный вывод, как и любые другие готовые программы, надо не "брать", а понимать.

"запись в базе есть" делается так
$query="select id from table where условие, которому отвечает твоя запись";
$res=mysql_query($query) or die(mysql_error());
$rows=mysq_num_rows($res);
вот если $rows больоше нуля, то записи есть.
 

R00miss

Guest
Автор оригинала: RomikChef
ночью пришла мысль написать тебе, что постраничный вывод, как и любые другие готовые программы, надо не "брать", а понимать.
Вот я это и пытаюсь делать :)


Автор оригинала: RomikChef
"запись в базе есть" делается так
$query="select id from table where условие, которому отвечает твоя запись";
$res=mysql_query($query) or die(mysql_error());
$rows=mysq_num_rows($res);
вот если $rows больоше нуля, то записи есть.
Спасибо, попробую сделать :cool:
 
Сверху