---
title: "PHP - mysql"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/130604-php-mysql"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Troxy"
published: "2005-06-27T08:25:31.000Z"
updated: "2005-07-01T15:32:42.000Z"
replies: 4
views: 272
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/130604-php-mysql"
---

# PHP - mysql

## #1 — Troxy, 2005-06-27T08:25Z

Hej. Jag har precis börjat lite med PHP. Innan har jag suttit med ASP men har tröttnat lite på det eftersom det är så mycket licenskonstnader för allt. I alla fall:

Hur loopar man på enklast sätt igenom alla poster man hämtat med en SQL-fråga?

Man får ju vad jag har förstått tillbaka alla resultat i någon special-array.

Mvh Emil

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

## #2 — Peeer, 2005-06-27T08:49Z

```php
<?php
mysql_connect('host', 'user', 'pass');
mysql_select_db('db');

$resource = mysql_query('select kolumn, kolumn2 from tabell');

while ($row = mysql_fetch_array($resource)) {
	echo $row['kolumn'] . $row['kolumn2'] .'<br />'; 
}

mysql_free_result($resource);
?>
```

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

## #3 — Troxy, 2005-06-27T12:08Z

Tack så mycket!

Det är en sak jag inte förstår...Hur vet den att den ska gå vidare till nästa post efter varje varv i while-loopen?

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

## #4 — Troxy, 2005-06-29T07:20Z

Jag får detta felmeddelande nu när jag hämtar poster ur databasen:

> Warning: mysql_query(): Your query requires a full tablescan...Use EXPLAIN to optimize your query.

Min SQL-fråga:

```
SELECT * FROM tblcategories order by category asc
```

Vad är det för fel? :/

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

## #5 — aasah, 2005-07-01T15:32Z

> **Troxy skrev:**
>
> ... Det är en sak jag inte förstår...Hur vet den att den ska gå vidare till nästa post efter varje varv i while-loopen?

Därför att villkoret i while-slingan samtidigt tar fram nästa rad. Alltså, du har:

```php
while ($row = mysql_fetch_array($resource)) {
    ....
}
```

Detta uttryck:
$row = mysql_fetch_array($resource) 
lägger successivt in värdet från en viss rad (uppifrån och ner i resultatraderna) i $row. När alla rader hämtats och man fortsätter att hämta "nästa" så returneras false i stället. Därmed fungerar while. Så länge det finns fler rader, kör. När raderna tog slut, gå vidare.

Angående ditt SQL-fel, så är det nog bättre att ställa den frågan i SQL-forumet.

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

---

Tråden på webben: https://www.webforum.nu/amne/php/130604-php-mysql
