Форумы портала PHP.SU » » Работа с СУБД » Проблема с between

Страниц (2): [1] 2 »
 

1. eko24 - 15 Июля, 2011 - 10:30:02 - перейти к сообщению
У меня в таблице много записей.
Синхронизирую следующую функцию с пагинатором:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.                 include "db.php";
  3.                 $from = $_GET['from'];//=1
  4.                 $to = $from+4;
  5.                 $query = mysql_query("SELECT * FROM items WHERE id BETWEEN '$from' AND '$to'");
  6.                 $item = mysql_fetch_array($query);
  7.                 do
  8.                 {
  9.                         echo '
  10.                         <div class="item">
  11.                                 '.$item['name'].'<br>
  12.                                 <img src="'.$item['photo'].'" style="margin-right:5px;width:115px;height:115px;float:left;overflow:hidden" alt="Фото">
  13.                                 date:'.$item['born'].'<br>
  14.                                 evaluation:'.$item['evaluation'].'<br>
  15.                                 owner:'.$item['owner'].'<br>
  16.                                 titles:'.$item['titles'].'<br>
  17.                                 pedigree:<a href="'.$item['pedigree'].'">'.$item['pedigree'].'</a><br>
  18.                                 </div>
  19.                         ';
  20.                 }
  21.                 while($item = mysql_fetch_array($res));
  22. ?>

К сожалению выводит:
Цитата:
Warning: mysql_fetch_array() expects parameter 1 to be resource, null given in Z:\home\custom\www\index.php on line 21
.
Очень нужна ваша помощь - укажите где ошибка, пожалуйста.
2. OrmaJever - 15 Июля, 2011 - 10:33:08 - перейти к сообщению
3. Мелкий - 15 Июля, 2011 - 10:34:56 - перейти к сообщению
0) используйте while, вместо do {} while
1)
eko24 пишет:
null given

Ну и смотрим, почему:
eko24 пишет:
$item = mysql_fetch_array($query);

eko24 пишет:
$item = mysql_fetch_array($res)
4. LIME - 15 Июля, 2011 - 10:55:38 - перейти к сообщению
eko24 у вас отсутствует запрос ))

5. vlados - 15 Июля, 2011 - 11:01:57 - перейти к сообщению
LIME what is it?
Цитата:
$query = mysql_query("SELECT * FROM items WHERE id BETWEEN '$from' AND '$to'");
6. eko24 - 15 Июля, 2011 - 11:03:23 - перейти к сообщению
LIME, не буду говорить кто вы...
Это что:
Цитата:
$query = mysql_query("SELECT * FROM items WHERE id BETWEEN '$from' AND '$to'");
?!!!
7. vlados - 15 Июля, 2011 - 11:05:17 - перейти к сообщению
Действительно лучше использовать while().
eko24 не буду говорить кто вы... Ха-ха Помотрите верхнее сообщение Радость
8. eko24 - 15 Июля, 2011 - 11:08:59 - перейти к сообщению
vlados, извините я писал наверное тогда же, когда и вы Язычок
А с while(), согласен щас попробую...
Не помогает Нет
9. Мелкий - 15 Июля, 2011 - 11:25:14 - перейти к сообщению
vlados и eko24, внимательно перечитайте мой сообщение и сообщение LIME. И подумайте. А потом всё-таки обратите внимание на текст ошибки и подумайте, почему переменная может стать null?

Не буду говорить, кто вы Язычок
10. vlados - 15 Июля, 2011 - 11:29:34 - перейти к сообщению
Цитата:
$item = mysql_fetch_array($query);
while($item = mysql_fetch_array($res));

2 запроса. Ошибка во втором. Первый не нужен.
11. eko24 - 15 Июля, 2011 - 11:29:55 - перейти к сообщению
все равно ничего
12. vlados - 15 Июля, 2011 - 11:30:57 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.     <?PHP
  2.                     include "db.php";
  3.                     $from = $_GET['from'];//=1
  4.                     $to = $from+4;
  5.                     $query = mysql_query("SELECT * FROM items WHERE id BETWEEN '$from' AND '$to'");
  6.                     while($item = mysql_fetch_array($query)){
  7.                             echo '
  8.                            <div class="item">
  9.                                    '.$item['name'].'<br>
  10.                                    <img src="'.$item['photo'].'" style="margin-right:5px;width:115px;height:115px;float:left;overflow:hidden" alt="Фото">
  11.                                    date:'.$item['born'].'<br>
  12.                                    evaluation:'.$item['evaluation'].'<br>
  13.                                    owner:'.$item['owner'].'<br>
  14.                                    titles:'.$item['titles'].'<br>
  15.                                    pedigree:<a href="'.$item['pedigree'].'">'.$item['pedigree'].'</a><br>
  16.                                    </div>
  17.                            ';
  18.                     }
  19.     ?>

(Добавление)
Цитата:
$item['pedigree']
Ура! Ура!
13. eko24 - 15 Июля, 2011 - 11:37:09 - перейти к сообщению
Все спасибо, извините за потраченное впустую время.
Нихера не работает.
В жопу эти пагинаторы
Всем спасибо, все свободны ©
</all>
14. evgenijj - 15 Июля, 2011 - 12:02:36 - перейти к сообщению
Все просто:
Warning: mysql_fetch_array() expects parameter 1 to be resource, null given in Z:\home\custom\www\index.php on line 21
Предупреждение: функция mysql_fetch_array() ожидает, что переданный ей параметр будет результатом запроса к БД. Вместо этого передан NULL, в строке 21, скрипт Z:\home\custom\www\index.php

Ну не был выполнен корректно твой запрос. Сделай так
$query = "SELECT * FROM items WHERE id BETWEEN '$from' AND '$to'";
echo $query;

Потом copy->paste в phpmyadmin: сообщение об ошибке -- сюда. Тогда тебе и расскажут, почему (если сам не поймешь).
Цитата:

В жопу эти пагинаторы

И нефига на зеркало пенять.
15. OrmaJever - 15 Июля, 2011 - 13:15:47 - перейти к сообщению
eko24 пишет:
Все спасибо, извините за потраченное впустую время.
Нихера не работает.
В жопу эти пагинаторы
Всем спасибо, все свободны ©

Всётаки проблему хотелось бы решить. Напишите после запроса

и текст ошибки напишите сюда.

 

Powered by ExBB FM 1.0 RC1