Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Tarttis apua mysql+php rivien näyttämisessä

v0q [04.10.2004 14:07:55]

#

Elikkä siis kun oon tekemässä tällästä kommentti järjestelmää... Toimii ihan hyvin ja onkin melkeen valmis... haen kommentit yms mysql :stä näin :

for ($i = 0; $i < mysql_num_rows($cquery); $i++) {
$content = mysql_result($cquery, $i, "comment_content");
$sender = mysql_result($cquery, $i, "comment_sender");
$sender_email = mysql_result($cquery, $i, "comment_sender_email");
$comment_number = mysql_result($cquery, $i, "comment_number");
$number = $comment_number + $i;

ja ongelma liittyykin rivien echoomiseen... eli siis kun laitan tähän väliin

echo "$number";

näyttää ihan oikein rivien numerot 1 :sta ylöspäin... mutta haluaisinkin tehdä niin... että rivien näyttäminen alkaisikin isoimmasta pienimpään... eli jos kommentteja on 10 ja rivit näytetään näin :
1. jotain
2. jotain
3. jotain yms. niin haluaisin saada sen näyttämään asian näin.


3. jotain
2. jotain
1. jotain... jos laitan SELECT * FROM... koodin perään DESC tai ASC se vaikuttaa vain kommenttien järjestykseen ei rivien... eli toivottavasti nytten tajusitte mitä tarkoitan :)

Deewiant [04.10.2004 14:23:07]

#

En nyt kauhean tarkasti tuota viestiä/koodia lukenut, mutta eikös se menisi vain näin?

for ($i = mysql_num_rows($cquery); $i > 0; $i--)

Ja sitten muuten koodi pysyy samana.

v0q [04.10.2004 14:33:42]

#

Kyllähän se muuten toimi mutta alkoi sitten heittää tällästä :
Warning: mysql_result(): Unable to jump to row 2 on MySQL result index 9 in c:\program files\easyphp1-7\www\egaming\index.php on line 186

aina riville 194 asti mihin asti on nuo mun mysql_result komennot...

samlui [04.10.2004 17:04:21]

#

tee näin

$cquery = mysql_query("SELECT * FROM kommentit ORDER BY comment_number DESC");

niin se järjestää viestit numeron perusteella isoimmasta pieninpään

ajv [04.10.2004 18:41:53]

#

Ja vielä jos saan ehdotella, niin mysql_result() --> mäkeen ja tilalle

<?php
$cquery = mysql_query("SELECT * FROM kommentit ORDER BY comment_number DESC");
while(($r = mysql_fetch_assoc($cquery)) !== false){
   extract($r);
   /*
   nyt kaikki hakemasi data on samannimisissä muuttujissa, kuin on
   tietokannassa sarakkeen nimi. Esim. sarakkeen 'comment_content'
   sisältö on muuttujassa $comment_content
   */
}
?>

Eli äkkiälaskettuna koodirivien määrä ainakin puolittui.

v0q [04.10.2004 19:19:46]

#

Joo eli siis tarkennetaan... laitoin että $comment_number on defaulttina 1 että saisin rivien "numeron" alkamaan 1 :stä koska jos olisin vaan käyttänyt $i :tä se olis alkanu 0 :sta mitä en halunnut... ja siis tajusin vasta tässä myöhemmin että eihän mun sellasta tarvi käyttää kun voin laittaa $row = 1 + $i; millä saan nuo näkymään oikein... eli $comment_number :sta ei tavallaan ole nyt mitään apua tässä... sori tästä kun unohdin kertoa...

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta