Page 151 - 4636
P. 151

$result = mysqli_query($db, $query);
              Ви передаєте запит, який необхідно виконати, і, враз і процедурного інтерфейсу, зв'язок з базою
        даних (у цьому прикладі - $db).Об'єктно-орієнтована версія повертає об'єкт результату, а процедурна
        версія – ресурс результату (як при виклику функції підключення до бази даних). У будь-якому випадку
        повертається значення зберігається в змінної  ($result) для подальшого використання. У випадку
        помилки функція повертає значення false.
              Отримання результатів запиту
              Існує безліч функцій, які дозволяють різними способами вилучати потрібні фрагменти з об'єкта
        або ідентифікатора результату. Об'єкт або ідентифікатор результату - це ключ доступу до повернутих
        запитом  рядків.  У  нашому  прикладі  ми  підрахували  кількість  повернутих  запитом  рядків  і
        скористалися  функцією  mysqli_fetch_assoc().У  разі  об'єктно-орієнтованого  підходу  кількість
        повернутих рядків зберігається в елементі num_rows об'єкта результату; звернутися до нього можна
        таким чином:
              $num_results = $result->num_rows;
              При процедурному підході для отримання кількості повернутих термініввикористується функція
        mysqli num rows(), якій необхідно передати ідентифікатор результату:
              $num_results - mysqli_num_rows (Sresult) ;
              Ця  інформація  потрібна,  якщо  планується  обробляти  або  відображати  результати,  оскільки
        дозволяє організувати цикл з них:
              for (Si = 0; $i<num_results; $i++) {//Обробка результатів}
              В  кожній  ітерації  цього  циклу  відбувається  виклик  $result->fetch_assoc()  (або
        mysqlifetchassoc ()). При відсутності повернутих рядків цикл не буде виконуватись. Саме ця
        функція витягує кожен рядок з результуючого набору і повертає її у вигляді масиву, в якому кожен
        ключ є ім'ям атрибута, а кожне значення - відповідним значенням:
              $row = $result->fetch_assoc();
              Або з використанням процедурного підходу:
              $row = mysqli_fetch_assoc($result);
              Маючи масив $row, можна перебрати всі поля та належним чином відобразити кожне з них:
              echo "<br />ISBN:ехо stripslashes($row['isbn']);
              Як  згадувалося  раніше,  stripslashes()  викликається  для  того,  щоб  “очистити”  значення,
        перш  ніж  відображати  його  користувачеві.Існує  кілька  варіантів  отримання  результату  з
        ідентифікатора результату. Замість масиву з іменованими ключами можна скористатися нумерованим
        масивом, застосувавшиmysqli_fetch_row ():
              $row = $result->fetchrow();
              або, у разі процедурного підходу:
              Srow = mysqli_fetch_row($result);
              Значення  атрибутів  зберігаються  в  значеннях  $row[0],  $row[l]  і  так  далі.  (Функція
        mysqli_fetch_array()  дозволяє  вибрати  рядок  таблиці  у  вигляді  масиву  обох  типів.)За
        допомогою  функції  mysqli_fetch_object()  можна  також  вибрати  рядок  для  розміщення
        всередину об'єкта:
              $row = $result->fetch_object();або так:
              $row = mysqli_fetch_object($result);
              Після цього доступ до кожного атрибуту можна отримати з допомогою $row->title, $row-
        >author і т.д.
              Від'єднання від бази даних
              Звільнення результуючого набору виконується таким чином:
              $result->free();або

                                                            148
   146   147   148   149   150   151   152   153   154   155   156