За последние 24 часа нас посетили 48292 программиста и 1729 роботов. Сейчас ищут 679 программистов ...

Проблема с запросом mysql_fetch_assoc ()

Тема в разделе "PHP для новичков", создана пользователем Alex.G, 29 авг 2017.

  1. Alex.G

    Alex.G Активный пользователь

    С нами с:
    22 мар 2017
    Сообщения:
    44
    Симпатии:
    1
    Добрый день!
    Помогите пожалуйста найти ошибку.
    Есть два запроса:
    Первый
    PHP:
    1. $sel = mysql_query("SELECT accrual.id_card, lease_rooms.tenant, lease_rooms.id_room, SUM(summa_debt) sumcorp FROM accrual, lease_rooms WHERE accrual.id_card=lease_rooms.id_card GROUP BY accrual.id_card");
    2.                         while($d = mysql_fetch_assoc($sel, MYSQL_ASSOC)){
    3.                                   $id_room_d1 = $d['id_room'];
    4.                                         $summa_debt_d1 = $d['sumcorp'];
    5.                                         $tenant_debt_d1 = $d['tenant'];
    6.                                 echo "<a href='/lease-rooms/room.php?id_room=$id_room_d1' class='link-room'>Сумма: ".$summa_debt_d1." руб. / ".$tenant_debt_d1."</a><br>";
    7.                                 }
    Он работает отлично.
    Второй:
    PHP:
    1. $sel1d = mysql_query("SELECT accrual.id_card, archive.id_arch, archive.tenant, SUM(summa_debt) sumcorp FROM accrual, archive WHERE accrual.id_card=archive.id_card GROUP BY accrual.id_card");
    2.                         while($d2d = mysql_fetch_assoc($sel1d, MYSQL_ASSOC)){
    3.                                   $id_arch_d2 = $d2d['id_arch'];
    4.                                         $summa_debt_d2 = $d2d['sumcorp'];
    5.                                         $tenant_debt_d2 = $d2d['tenant'];
    6.                                 echo "<a href='/lease-rooms/room-archive.php?id_arch=$id_arch_d2' class='link-room'>Сумма: ".$summa_debt_d2." руб. / ".$tenant_debt_d2."</a><br>";
    7.                                 }
    Вот с ним проблема. Сделал его на основе первого, только заменил название таблицы, а он работать не хочет. Не пойму, что тут не так.
     
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    что значит "не хочет" ?
    - выдает ошибку, если да - то какую?
    - запрос отрабатывает, но в выборке пусто - потому и "не хочет" - тут нужно смотреть реальные данные в БД, может реально нет таких, подходящих условию
     
  3. Alex.G

    Alex.G Активный пользователь

    С нами с:
    22 мар 2017
    Сообщения:
    44
    Симпатии:
    1
    Выдает вот такую ошибку:
    Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in D:\OpenServer\domains\mp\debt.php on line 61
    и выборка есть
     
  4. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    есть такая прекрасная функция - mysql_error() вот после запроса вызовите ее и посмотрите какую ошибку вам даст

    P.S. mysql_ - устарело и не поддерживается. Советую перейти на mysqli_ или PDO
     
  5. Alex.G

    Alex.G Активный пользователь

    С нами с:
    22 мар 2017
    Сообщения:
    44
    Симпатии:
    1
    Выдает такую ошибку -
    Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'mp.archive.tenant' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
    все равно не пойму в чем тут дело
     
  6. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    вставить запрос в phpMyAdmin и посмотреть в чем проблема.
     
  7. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    google translate в помощь....