Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP: базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
philcrosoft
3 / 3 / 1
Регистрация: 19.09.2010
Сообщений: 253
1

Поиск по базе данных + постраничный вывод данных

31.05.2011, 23:56. Просмотров 2472. Ответов 3
Метки нет (Все метки)

Привет всем! в общем с поиском данных всё нормально! но не работает постраничный вывод ((( не знаю, где не так (! посомтрите пожалуйста, переходит по ссылке но результаты остаются те же что в первых 10 результатах

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
  // Get the search variable from URL
  $var = @$_GET['q'] ;
  $trimmed = trim($var); //trim whitespace from the stored variable
 
$limit=10;
 
if ($trimmed == "")
  {
  echo "<p><b>Please enter a search ...</b></p>";
  exit;
  }
 
if (!isset($var))
  {
  echo "<p>We dont seem to have a search parameter!</p>";
  exit;
  }
 
mysql_select_db("db") or die("Unable to select database"); 
 
$query = "select * from db where row like \"%$trimmed%\"
  order by row"; 
 
 $numresults=mysql_query($query);
 $numrows=mysql_num_rows($numresults);
 
if ($numrows == 0)
  {
  echo "Results";
 
 
  }
 
  if (empty($s)) {
  $s=0;
  }
 
  $query .= " limit $s,$limit";
  $result = mysql_query($query) or die("Couldn't execute query");
 
echo "<p>You searched for:<b> &quot;" . $var . "&quot;</b></p>";
 
$count = 1 + $s ;
 
  while ($row= mysql_fetch_array($result)) {
  $title = $row["row"]."<br>";
 
  echo "$count)&nbsp;$title" ;
  $count++ ;
  }
 
$currPage = (($s/$limit) + 1);
 
  echo "<br />";
 
  if ($s>=1) { // bypass PREV link if s is 0
  $prevs=($s-$limit);
  print "&nbsp;<a href=\"$PHP_SELF?s=$prevs&q=$var\">&lt;&lt;
  Prev 10</a>&nbsp&nbsp;";
  }
 
  $pages=intval($numrows/$limit);
 
  if ($numrows%$limit) {
  // has remainder so add one page
  $pages++;
  }
 
  if (!((($s+$limit)/$limit)==$pages) && $pages!=1) {
  $news=$s+$limit;
 
  echo "&nbsp;<a href=\"$PHP_SELF?s=$news&q=$var\">Next 10 &gt;&gt;</a>";
  }
 
$a = $s + ($limit) ;
  if ($a > $numrows) { $a = $numrows ; }
  $b = $s + 1 ;
  echo "<p>Showing results $b to $a of $numrows</p>";
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.05.2011, 23:56
Ответы с готовыми решениями:

Постраничный вывод данных из таблицы в базе
Всем привет! С наступающим вас! Прошу вас помочь организовать постраничный вывод данных из...

Постраничный вывод данных из базы данных
Доброго времени суток! собственно выводится список товаров с информацией о них, но весь список на...

Поиск в базе данных и вывод информации на сайте
Всем привет! Столкнулся с проблемой. Есть сайт и база данных, из которой информация выводится на...

Постраничный вывод данных из MySQL
Долго в инете лазил с этой темкой, что т для меня непосильно справиться с этой задачей...

Постраничный вывод данных (форма обновления)
Приветствую! Есть рабочая форма обновления данных &lt;? /* Соединяемся с базой данных */...

3
philcrosoft
3 / 3 / 1
Регистрация: 19.09.2010
Сообщений: 253
06.08.2011, 09:49  [ТС] 2
поднимаю! проблему не решил ((( ... всё так же не работает постраничный вывод (
0
devillom
11 / 11 / 0
Регистрация: 03.08.2011
Сообщений: 44
06.08.2011, 12:51 3
Вот пример из рабочего сайта
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
 <?php
$qu = "SELECT SQL_CALC_FOUND_ROWS * FROM posts";
$result1 = mysql_query($qu,$db) or mysql_error();
 
$all_fields = mysql_num_rows($result1); //Cчитываем с файла количество записей
 
$on_page = 5; //Количество вывода записей на страницу
if(isset($_GET['page'])){
$page = $_GET['page']; //Если в адресе уже введена страница то мы извлекаем номер страницы из адреса и присваиваем его переменной $page
}else{
$page = 1; //Если до этого страницы не открывались то по умолчанию страница 1
}
$pages = $all_fields / $on_page; //Подсчитываем общее количество страниц
$pages = ceil($pages); //Округляем в большую сторону
$begin = $page * $on_page - $on_page; //С каких записей начинать отсчет в MySQL  
   
if($begin<0){$begin = 1;} 
 
$query = "SELECT * FROM posts ORDER BY date DESC LIMIT $begin, $on_page";
$result = mysql_query($query,$db) or mysql_error();
 
$post_row = mysql_fetch_array($result);  
    
    $parser = new ubbParser();
    $parser->setUsername('webmaster');
 
 
do{
       if($post_row['rating']>0){$post_row['rating']="+".$post_row['rating'];} 
        printf("      
<div id='news_title'> 
<div>
  <b class='raunder'>
  <b class='raunder1'><b></b></b>
  <b class='raunder2'><b></b></b>
  <b class='raunder3'></b>
  <b class='raunder4'></b>
  <b class='raunder5'></b></b>
  <div class='raunderfg'>
  <div id='title_img'><img src='/images/category/%s.png' width='32' height='32'/></div>%s<br>
  <p><div id='date'>Дата: %s<rating><img src='images/apple.png' />%s<img src='http://pics.kz/s6/bf/3a/c6/bf3ac60b2a6aa0e460419c595606a9c6.png' />%s</rating></p><br></div>
  </div>
  <b class='raunder'>
  <b class='raunder5'></b>
  <b class='raunder4'></b>
  <b class='raunder3'></b>
  <b class='raunder2'><b></b></b>
  <b class='raunder1'><b></b></b></b>
</div>
</div>
<table id='text_area'>
<tr>
 <td valign='middle' id='news_img'><a href='%s' rel=\"lightbox[roadtrip]\"><img src=\"%s\" alt=\"\"  width=\"150\"></a></td>
 <td align='left' valign='top'>%s</td>
</tr>                   
</table>
 
 
<div id='news_bottom'><a id='dalee' href='view.php?id=%s'>Подробнее...</a></div><br>
",$post_row['category'], $post_row['title'],$post_row['date'],$post_row['rating'],$post_row['coments_post'],$post_row['image'],$post_row['image'],$parser->parse($post_row['description']),$post_row['id']);
 
        
}while ($post_row = mysql_fetch_array($result));
    
 
?>
  <div class="pages">
  <div>
    <b class='raunder'>
      <b class='raunder1'><b></b></b>
      <b class='raunder2'><b></b></b>
      <b class='raunder3'></b>
      <b class='raunder4'></b>
      <b class='raunder5'></b></b>
    <div class='raunderfg'>
  <?php
for($i=1;$i<=$pages;$i++) {
  if ($i == $page) {
    echo $i." ";
    
  } else {
    echo "<a href=\"index.php?page=".$i."\">".$i."</a> ";
  }
}?>
0
philcrosoft
3 / 3 / 1
Регистрация: 19.09.2010
Сообщений: 253
06.08.2011, 17:33  [ТС] 4
да такой пример работает с простым выводом данных ... а у меня там поиск по ключевым словам ... как бы в поиске написано следующие 10 результатов ... нажимаешь и не работает (((
0
06.08.2011, 17:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.08.2011, 17:33

Постраничный вывод данных на PHP и MySQL
Не получается сделать постраничный вывод данных на PHP и MySQL! Нажимаю на любую страницу в...

Постраничный вывод данных в зависимости от разрешения монитора
Здравствуйте. Столкнулся с такой проблемой. Сайт по высоте резиновый. То есть растягивается по...

Запрос к базе данных через форму и вывод данных на страничке
Всем привет. Очень нужна ваша помощь, вы моя последняя надежда. У меня стоит одна форма и ввожу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru