Hirdetés
- Szívós, szép és kitartó az új OnePlus óra
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Indiában Philips okostelefonokat is lehet majd választani
- Samsung Galaxy A56 - megbízható középszerűség
- Kis méret, nagy változás a Motorolánál
- Megérkezett a Google Pixel 7 és 7 Pro
- Kapható a strapamobil, aminek kikapcsolása nélkül lehet kicserélni az aksiját
- Bemutatkozott a Poco X7 és X7 Pro
- Külföldi prepaid SIM-ek itthon
- EarFun Air Pro 4+ – érdemi plusz
Új hozzászólás Aktív témák
-
Tele von Zsinór
őstag
válasz
trisztan94
#14275
üzenetére
pg_fetch_all() vagy fetchAll() attól függően, mit használsz.
-
Sk8erPeter
nagyúr
válasz
trisztan94
#14275
üzenetére
"tehát ha a 2. találat id-jére szeretnék hivatkozni akkor
$result[1][0];
eddig gondolom világos.."
Világos, de a legnagyobb hülyeség integer tömbindexekkel hivatkozni a mezőidre, amikor tök egyszerűen megkapod asszociatív tömbként is a fetch_array()-vel, de akkor már használd a fetch_assoc()-ot, mivel tök felesleges, hogy asszociatív és numerikus tömb is legyen kutyulva...szóval akkor helyesen $result[1]['shirt_image_id'], ha már...
Persze nyilván így az éles kódban nem fogsz hivatkozni rá, mivel a $result tömbön szépen végigmész egy foreach-csel/while-lal/for ciklussal.Egyébként meg továbbra sem szégyen, inkább érdem olvasni a dokumentációt...
http://www.php.net/manual/en/mysqli-result.fetch-all.php
azonban itt is van a figyelmeztetés:
"As mysqli_fetch_all() returns all the rows as an array in a single step, it may consume more memory than some similar functions such as mysqli_fetch_array(), which only returns one row at a time from the result set. Further, if you need to iterate over the result set, you will need a looping construct that will further impact performance. For these reasons mysqli_fetch_all() should only be used in those situations where the fetched result set will be sent to another layer for processing."A fetch_assoc-nál meg ott van a példa is a doksiban az objektumorientált kódra:
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";
if ($result = $mysqli->query($query)) {
/* fetch associative array */
while ($row = $result->fetch_assoc()) {
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
}
/* free result set */
$result->free();
}
/* close connection */
$mysqli->close();Szóval nem értem, mi a gond:
a saját kódodban kigyűjtheted az eredményeidet egy másik tömbbe is, ha nagyon akarod:$myResults = array();
.....................
while ($row = $result->fetch_assoc()) {
$myResults[] = $row;
// de itt babrálhatsz az eredményeiddel így:
echo $row['shirt_image_id'] . ': '.$row['description'];
}
....................
itt felhasználhatod a $myResults tömbödet, amire akarod...
Ha ezt pl. json_encode-olni akarod, akkor nyilvánvalóan olyan módon gyűjtsd ki ezeket az adatokat a $myResults tömbbe, hogy az szűrve legyen, és csak azt a mezőt és olyan módon add vissza a kliensoldalnak, ahogy az elfogadható (pl. ha nem akarod egy az egyben a mezőneveidet visszaadni, akkor nevezd el máshogy, vagy tudom is én, mi az elvárás nálad).
Szerk.:
Az pedig gázos, ha így van tagekkel ellátva a bejegyzésed, hogy vesszővel elválasztva beokádod egyetlen mezőbe:
[categories] => {utazás,párizs,trisztán}
Pfuj, broáf!
Új hozzászólás Aktív témák
- BMW topik
- CADA, Polymobil, és más építőkockák
- Szívós, szép és kitartó az új OnePlus óra
- Feltörték a regisztrációmat vagy elvesztettem a belépési emailcímet, 2FA-t
- sziku69: Szólánc.
- Melyik tápegységet vegyem?
- Autós topik
- Elektromos autók - motorok
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Indiában Philips okostelefonokat is lehet majd választani
- További aktív témák...
- Lenovo ThinkPad P1 Gen 4 i7 32GB RAM 512GB SSD NVIDIA T1200 16 2560 1600 Garancia
- Dell Precision 7550 i7 32GB RAM 512GB SSD NVIDIA Quadro T1000 FHD
- Dell Precision 5560 i7 32GB RAM 512GB SSD NVIDIA RTX A2000 FHD+
- BOMBA áron eladó új Microsoft Surface Laptop 4 garanciával! AMD Ryzen 5 /16GB /256 SSD/TOUCH/13.5"/
- Dell Latitude 7420 i7 / 32GB /1TB SSD / FHD IPS
- ÁRGARANCIA!Épített KomPhone i5 14400F 32/64GB RAM RX 9060 XT 8GB GAMER PC termékbeszámítással
- GYÖNYÖRŰ iPhone 12 Pro Max 128GB Pacific Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3940, 100% Akku
- GYÖNYÖRŰ iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3133, 95% Akkumulátor
- DeepCool FK120 Performance Fan 3 Kit
- AMD AM4-es HP OMEN 25L GT12 alaplapok - B550 chipset
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest




