Kezdőoldal » Számítástechnika » Programozás » Php-ban egy mysql-ből lekért...

Php-ban egy mysql-ből lekért táblából hogyan tudom többször kiolvasni a rekordokat?

Figyelt kérdés

Így próbáltam de nem sikerült:

$keszulek = mysql_query("SELECT * FROM mac_gyok_keszulek");

for($i=0;$i<3;$i++)

{

$keszulek2 = $keszulek;

while($u2=mysql_fetch_assoc($keszulek2))

{

print $i.' '.$u2['Value'];

}

}


És milyen fügvénnyel tudom lekérni azt hogy a $keszulek-ben hány sor van?



2015. jún. 28. 11:10
 1/10 anonim ***** válasza:
Minek akarsz többször kiolvasni, miért nem tárolod el ? Másrészt: $keszulek->num_rows;
2015. jún. 28. 11:23
Hasznos számodra ez a válasz?
 2/10 A kérdező kommentje:
Hogy kell eltárolni?
2015. jún. 28. 11:27
 3/10 anonim ***** válasza:
100%
Változókról, tömbökről, értékadásról hallottál már ?
2015. jún. 28. 11:32
Hasznos számodra ez a válasz?
 4/10 anonim ***** válasza:

Úgy, hogy változóba teszed :D amúgy a kódodnak nem igazán van értelme, nem értem miért teszed keszulek2-be a már meglévő keszulek változód (lekérdezés eredményét ugye) és aztán miért azzal végzed a műveletet.


Vagy elég ennyi:


while($u2=mysql_fetch_assoc($keszulek))

{

print $i.' '.$u2['Value'];

}


Vagy ha csak 3x akarod futtatni maximum akkor csinálhatsz pl ilyet:


$i=0;

while(($u2=mysql_fetch_assoc($keszulek)) && ($i<3))

{

print $i.' '.$u2['Value'];

$i++;

}


Vagy eleve lekérhetsz csak 3 sort az adatbázisból:


$keszulek = mysql_query("SELECT * FROM mac_gyok_keszulek LIMIT 3");


Ha a 3 csak azért volt ott, mert nem ismered a [link] -t akkor nem szóltam. És ha élesbe megy az oldal érdemes lesz áttérned mysqli kapcsolatra, a sima mysql már nem támogatott és sebezhető, viszont használatban nincs sok különbség a kettő között.

2015. jún. 28. 11:33
Hasznos számodra ez a válasz?
 5/10 A kérdező kommentje:
Nem 3 sort akarok kiíratni hanem a lekért sorokat 3-szor.
2015. jún. 28. 11:38
 6/10 anonim ***** válasza:

Jah, akkor egyszerűbb fordítva :)


Mikor while ciklusban végigmész a sorokon akkor lefut belül mindig egy for ciklus 3x és az írja ki a sorokat.

2015. jún. 28. 11:40
Hasznos számodra ez a válasz?
 7/10 A kérdező kommentje:

Igen de úgy szeretném hogy kiírom egymás után a sorokat majd megismétlem még kétszer.


Tehát nem ezt szeretném kapni:

első sor

első sor

első sor

második sor

második sor

második sor

harmadik sor

harmadik sor

harmadik sor


Hanem ezt:

első sor

második sor

harmadik sor

első sor

második sor

harmadik sor

első sor

második sor

harmadik sor

2015. jún. 28. 11:43
 8/10 A kérdező kommentje:
Mondjuk belepakolhatom tömbökbe is a mezőket csak kíváncsi lettem volna hogy nincs-e egy egyszerűbb megoldás.
2015. jún. 28. 11:44
 9/10 anonim ***** válasza:
Pedig akkor jól csináltad a leírásban lévő kóddal, bár áttenni felesleges $keszulek2-be, PHP hiba nincs? Tegnapi kérdésedben a képen relatív sok helyesírási hiba volt, most biztos nem néztél / gépeltél el valamit?
2015. jún. 28. 11:52
Hasznos számodra ez a válasz?
 10/10 A kérdező kommentje:
Nem gépeltem el semmit. Php hiba nincs. A mysql_fetch_assoc() függvény végig megy a táblán és ha vége a táblának akkor false értéket ad. Amikor a ciklus másodjára lefutna akkor már a függvény már végig ment a táblán az első lefutásnál ezért false értéket ad.
2015. jún. 28. 11:56

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!