Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
3 / 3 / 0
Регистрация: 26.06.2012
Сообщений: 63

Запрос на выборку данных из БД

11.04.2014, 10:17. Показов 895. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе утро форумчане!
У меня возникла такая проблема имеется запрос, который должен выводить все данные содержащиеся в таблице по определенному параметру, но мне выводятся дублированные записи именно в том количестве сколько данных он должен был вывести, вот отрывок кода:
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
include("blocks/bd.php");
if(isset($_GET['id'])) { $id = $_GET['id']; }
$result = mysql_query("SELECT * FROM books WHERE p_cat='$id'", $db);
if(mysql_num_rows($result) > 0)
{
    $myrow = mysql_fetch_array($result);
    do
    {
        printf("<table cellspasing='0' cellpadding='0' border='0' class='view_table' align='center'>
                    <tr>
                        <td class='view_td'>
                        <p class='p_title'><img width='100' height='150' class='leftimg' src='%s'>
                        <a href='index.php?id_p_cat=%s' class='a2'>%s</a></p>
                        <p class='p3'><b>Автор:</b> %s</p>
                        <p class='p3'><b>Дата добавления:</b> %s</p>
                        <p class='p3'><b>Размер файла:</b> %s</p>
                        <p class='p3'><b>Формат файла:</b> %s</p>
                        <p class='p3'><b>Язык:</b> %s</p>
                        </td>                       
                    </tr>
                    <tr>
                    <td><p class='p3'>%s</p></td>
                    </tr>
                </table>", $myrow['img'], $myrow['id'], $myrow['title'], $myrow['author'], $myrow['date'], 
                            $myrow['size'], $myrow['format'], $myrow['language'], $myrow['description']);
    }while(mysql_fetch_array($result));
}
в есть таблица категорий из которой берется id, а в общей таблице имеется поле p_cat которое соответствует категории, в чем проблемма кто нибудь может объяснить, вроде все должно нормально работать

Добавлено через 13 минут
Модераторы удалите пожалуйста тему, ошибка найденна, в условии цикла не правильное условие было
до ошибки
PHP
1
while(mysql_fetch_array($result));
исправленный вариант
PHP
1
while($myrow = mysql_fetch_array($result));
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.04.2014, 10:17
Ответы с готовыми решениями:

Запрос на выборку данных
Здравствуйте, нужна помощь в составление запроса. Нужно что бы после выборки вместо Idperson1,IdPerson2,Idperson3 отображались ФИО...

Запрос на выборку данных
&quot;из таблицы Виды работ вывести все данные о конкретной работе (например, о работе Пошив костюма).&quot; Объясните пожалуйста как примерно...

Запрос на выборку данных
Доброго времени суток! Вопрос следующего характера. Пытаюсь сделать запрос на выборку населенных пунктов из ФИАС и районов к которым они...

2
 Аватар для lookmy
60 / 55 / 20
Регистрация: 01.04.2013
Сообщений: 551
12.04.2014, 12:42
Могу от себя сказать DO While самый убогий , я редко его вижу кто его использует из опытных программистов .
Этот цикл полюбил Попов , я могу сказать что после просмотра вы его тоже полюбили .
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
do
    {
        printf("<table cellspasing='0' cellpadding='0' border='0' class='view_table' align='center'>
                    <tr>
                        <td class='view_td'>
                        <p class='p_title'><img width='100' height='150' class='leftimg' src='%s'>
                        <a href='index.php?id_p_cat=%s' class='a2'>%s</a></p>
                        <p class='p3'><b>Автор:</b> %s</p>
                        <p class='p3'><b>Дата добавления:</b> %s</p>
                        <p class='p3'><b>Размер файла:</b> %s</p>
                        <p class='p3'><b>Формат файла:</b> %s</p>
                        <p class='p3'><b>Язык:</b> %s</p>
                        </td>                       
                    </tr>
                    <tr>
                    <td><p class='p3'>%s</p></td>
                    </tr>
                </table>", $myrow['img'], $myrow['id'], $myrow['title'], $myrow['author'], $myrow['date'], 
                            $myrow['size'], $myrow['format'], $myrow['language'], $myrow['description']);
    }while(mysql_fetch_array($result));
А вот так не лучше будет выглядеть ваш код ?
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
<?php
include("blocks/bd.php");
if(isset($_GET['id'])) { $id = $_GET['id']; }
$result = mysql_query("SELECT * FROM books WHERE p_cat='$id'", $db);
echo "<table cellspasing='0' cellpadding='0' border='0' class='view_table' align='center'>";
while (mysql_fetch_array($result)):
?>
      <tr>
       <td class='view_td'>
        <p class='p_title'><img width='100' height='150' class='leftimg' src='<?= $myrow['img']?>'>
          <a href='index.php?id_p_cat=<?= $myrow['id']?>' class='a2'>%s</a></p>
        <p class='p3'><b>Автор:</b> %s</p>
        <p class='p3'><b>Дата добавления:</b> %s</p>
        <p class='p3'><b>Размер файла:</b> %s</p>
        <p class='p3'><b>Формат файла:</b> %s</p>
        <p class='p3'><b>Язык:</b> %s</p>
       </td>                       
      </tr>
      <tr>
       <td>
        <p class='p3'>%s</p>
       </td>
      </tr>
<?php endwhile; ?>
</table>
Проценты сами доставить те %, точнее поменяете на ваши данные
0
Web Programmer
 Аватар для JimUSA
325 / 286 / 121
Регистрация: 28.09.2011
Сообщений: 1,570
13.04.2014, 19:37
PHP
1
(int)$_GET["id"]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.04.2014, 19:37
Помогаю со студенческими работами здесь

Запрос на выборку данных
Доброго времени суток.Искал в интернете, да и сам сколько сидел, но так ни к чему и не пришел.Задача такова: таблица Access соединена с...

Запрос на выборку данных
имеется БД с таблицами Сотрудники (ФИО,отдел специальность и т.д.), Специальность(код специальности, название) и Вакансии(специальность,...

Запрос на выборку данных
Добрый день уважаемые форумчане. Всё никак я не поборю эту проблему. Есть таблица с данными &quot;Сводная&quot; из неё необходимо выбрать...

Запрос на выборку данных
Сделал экспорт БД. Затем удачно импортировал БД. Но когда запускаю сервер и перехожу по своему локальному сайту выдает такую ошибку: ...

Запрос на выборку данных
таблица Student (int id, nvarchar name) таблица StudMark (int id, int mark, int id_stud) id_stud - внешний ключ. Нужно вывести...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru