---
title: "hämta specifik rad i en variabel av typ mysql_query"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/60932-hämta-specifik-rad-i-en-variabel-av-typ-mysql-query"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "fredriksk"
published: "2002-12-02T21:49:28.000Z"
updated: "2002-12-04T07:15:11.000Z"
replies: 8
views: 285
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/60932-hämta-specifik-rad-i-en-variabel-av-typ-mysql-query"
---

# hämta specifik rad i en variabel av typ mysql_query

## #1 — fredriksk, 2002-12-02T21:49Z

jo alltså jag har hämtat ut info från min databas och sparat i en variabel. typ så här:

$variabel = mysql_query($sqlfraga, $link);

I normala fall så hämtar man ju en rad i taget typ så här:

$rad= mysql_fetch_row($variabel);

Men hur kan man smidigast hämta... säg... rad 4-6 och sedan rad 2-3?

Finns det funktioner för att flytta "pekaren" i $variabel?

Hoppas jag har klargjort nog?

Permalänk: https://www.webforum.nu/p/60932

## #2 — Webslave, 2002-12-02T21:54Z

Om du använder följande:

```
$sql = "SELECT * FROM tabell LIMIT $start,$stop";
```

Då är det bara att sätta $start där du vill att den ska börja och $stop till hur många rader du vill ha. Detta går lätt att fixa så att du kan "flytta pekaren" genom att kolla om $start är satt, om inte är den noll... men om den är det så är $start = $start+5 (eller hur mycket du nu har satt $stop till)

Hoppas det hjälper. ;)

Permalänk: https://www.webforum.nu/p/871889

## #3 — Mungo, 2002-12-02T22:42Z

Kolla också in next() och prev() och varför inte current() och array_search() när du ändå håller på. :)

Permalänk: https://www.webforum.nu/p/871909

## #4 — fredriksk, 2002-12-03T15:33Z

> **Mungo skrev:**
>
> Kolla också in next() och prev() och varför inte current() och array_search() när du ändå håller på. :)

Jo men dessa fungerar väl inte på en variabel av typ: mysql_query()?

Alltså jag har en variabel, $resultat som är av typen mysql_query. Denna innehåller en HEL tabell. Som jag har fattat det så är det dock ingen vanlig array detta? vare sig en två eller tre dimensionell sådan. Det går alltså inte plocka ut ett värde ur denna variabel på följande sätt?

$varde = $resultat\[2\]; //går inte
$varde = $resultat\[3\]\[2\] //går inte heller.

Alltså måste jag plocka en rad först ur denna variabel. Det är här i problemet ligger. Jag vill kunna plocka en specifik rad, vilken som. Ett sätt är ju att göra en loop först typ så här:

//Om jag vill ha rad 5
for (i=0; i\<5; i++)
{
     $temp = mysql_fetch_row($resultat);
}

//sedan plockar jag rad 5 då
$rad = mysql_fetch_row($resultat);

Inte så snyggt och problemet är hur jag skall göra om jag därefter vill hämta ut rad 4:a...

Borde nog förklarat bättre från början...

Permalänk: https://www.webforum.nu/p/875344

## #5 — Mungo, 2002-12-03T16:34Z

Ja, men du kan ju slänga in ditt resultat i en egen array? Detta borde funka:

```php
$sql = "SELECT * FROM hejsan";
$rs = mysql_query($sql);
while ($row = mysql_fetch_array($rs)) {
 $rAr[] = $row;
  }
```

Nu har du hela klumpen i $rAr och torde kunna använda t.ex. $rAr\[0\]\['id'\] om jag förstått rätt. Och därmed också kunna använda next() och prev() osv...

Permalänk: https://www.webforum.nu/p/875396

## #6 — Webslave, 2002-12-03T18:42Z

Får man fråga vad du ska använda det till?

Permalänk: https://www.webforum.nu/p/875491

## #7 — fredriksk, 2002-12-03T20:27Z

tja... ganska simpelt faktiskt... 
jag har bla en gästbok där jag vill visa fem inlägg i taget med en bakåt knapp och en framåtknapp samt länkar till sida1...sida2...

Kanske finns bättre lösningar?

Annars är ovanstående rätt bra... lägg det i en egen array...=)

Permalänk: https://www.webforum.nu/p/875580

## #8 — Webslave, 2002-12-03T22:44Z

Njae... det tycker inte jag (observera att det endast är jag ;))
Det alternativet gör det nog ganska segt då du måste hämta alla inlägg först och sedan sortera ut dem... om du använder "mitt" exempel så hämtar du endast de rader du ska visa... det går nog snabbare kan jag tänka mig. Sök efter "pagin" här på wF så får du en hel del exempel att välja mellan.

Permalänk: https://www.webforum.nu/p/875666

## #9 — Mungo, 2002-12-04T07:15Z

Ja, du ska ju klockrent titta på nyckelordet "LIMIT" för dina SQL-frågor... Hade du sagt vad du skulle ha det till från början hade vi kunnat hjälpa dig mycket snabbare. :)

t.ex:

SELECT \* FROM guestbook ORDER BY tsCreated DESC LIMIT 0, 5

hämtar de fem senaste inläggen om du har ett automatiskt timestampfält som heter tsCreated. Sen kan du bara scripta så att du på nästa sida kör:

SELECT \* FROM guestbook ORDER BY tsCreated DESC LIMIT 5, 5

...för att hämta de fem nästa inläggen.

Permalänk: https://www.webforum.nu/p/875784

---

Tråden på webben: https://www.webforum.nu/amne/php/60932-hämta-specifik-rad-i-en-variabel-av-typ-mysql-query
