⊗ppPmDBRGet 366 of 447 menu

SQL vaicājuma rezultāta iegūšana PHP

Iepriekšējā nodarbībā mēs izveidojām testa kodu. Atgādināšu tā būtisko daļu, kas veic vaicājumu datu bāzei:

<?php $query = 'SELECT * FROM users'; $res = mysqli_query($link, $query) or die(mysqli_error($link)); var_dump($res); ?>

Kā jūs redzat, pēc tam, kad notiek vaicājums datu bāzei, mainīgajā $res būs šīs darbības rezultāts. Tomēr tas atrodas nevis tajā formā, kas mums vajadzīga PHP, bet tajā formā, kādā to nosūtīja mums datu bāze.

Lai iegūtu rezultātu ierastajā formā, ir jāizmanto funkcija mysqli_fetch_assoc, kas izvelk no rezultāta vienu rindu.

Pamēģināsim:

<?php $row = mysqli_fetch_assoc($res); var_dump($row); ?>

Rezultātā var_dump izvadīs masīvu ar pirmo darbinieku:

<?php ['id' => 1, 'name' => 'user1', 'age' => 23, 'salary' => 400] ?>

Šajā laikā no mainīgā $res pirmais darbinieks pazudīs, un nākamais mysqli_fetch_assoc izsaukums iegūs jau nākamo darbinieku.

Un tā var izsaukt mūsu funkciju līdz tam brīdim, kad darbinieki beigsies. Tiklīdz tas notiks, nākamais funkcijas izsaukums atgriezīs false.

Pamēģināsim:

<?php $row1 = mysqli_fetch_assoc($res); var_dump($row1); // darbinieks numurs 1 $row2 = mysqli_fetch_assoc($res); var_dump($row2); // darbinieks numurs 2 $row3 = mysqli_fetch_assoc($res); var_dump($row3); // darbinieks numurs 3 $row4 = mysqli_fetch_assoc($res); var_dump($row4); // darbinieks numurs 4 $row5 = mysqli_fetch_assoc($res); var_dump($row5); // darbinieks numurs 5 $row6 = mysqli_fetch_assoc($res); var_dump($row6); // darbinieks numurs 6 $row7 = mysqli_fetch_assoc($res); var_dump($row7); // izvadīs NULL - darbinieki beigušies ?>
Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt