---
title: "Warning: mysql_fetch_assoc()..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/92516-warning-mysql-fetch-assoc"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Pedda"
published: "2003-12-12T18:59:04.000Z"
updated: "2003-12-15T23:28:37.000Z"
replies: 7
views: 762
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/92516-warning-mysql-fetch-assoc"
---

# Warning: mysql_fetch_assoc()...

## #1 — Pedda, 2003-12-12T18:59Z

Jag får följande felmeddelande:

> Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\\apache\\htdocs\\projekt_243\\index.php on line 411

 

Rad 411 ser ut så här (första raden):

```php
$sql = "SELECT p_refuser, p_refmedlid, COUNT(p_refuser) AS antal FROM poang GROUP BY p_refuser ORDER BY antal DESC LIMIT 5";
$result = mysql_query($sql);
while ($rad = mysql_fetch_assoc($result)) {	
    echo "<img src=\"layout/dot.gif\" width=\"6\" height=\"7\" /> <a href=\"profile.php?id=".$rad['p_refmedlid']."\">".$rad['p_refuser']."</a> (".$rad['antal'].")<br>";
}
```

 

Någon som vet vad felet kan vara?

MySQL 4.0.16
Apache2
PHP 4.3.3

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

## #2 — K@llen, 2003-12-12T20:51Z

Vad får du för felmeddelande om du lägger in lite felhantering:

```
$sql = "SELECT p_refuser, p_refmedlid, COUNT(p_refuser) AS antal FROM poang GROUP BY p_refuser ORDER BY antal DESC LIMIT 5";

$result = mysql_query($sql) or die( mysql_error() );

   if ( mysql_num_rows( $result ) < 1 ) {

      print "Ingen träff";      

   }

   else {

while ($rad = mysql_fetch_assoc($result)) {    
    echo "<img src=\"layout/dot.gif\" width=\"6\" height=\"7\" /> <a href=\"profile.php?id=".$rad['p_refmedlid']."\">".$rad['p_refuser']."</a> (".$rad['antal'].")<br>";
}

}
```

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

## #3 — Pedda, 2003-12-12T21:43Z

Nu får jag detta felmeddelande plus att den skriver ut "Ingen träff".

> Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\\apache\\htdocs\\projekt_243\\index.php on line 412
> Ingen träff

 

och nej, databasen är inte tom.  ;)

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

## #4 — K@llen, 2003-12-12T21:47Z

Felet brukar ges när det är något fel på sql-frågan, men din syntax ser rätt ut vad jag kan se. Har du stavad tabell- och kolumnnamn rätt?

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

## #5 — Pedda, 2003-12-12T21:50Z

ja, allt är rättstavat. Får testa mig fram lite mer och se om jag hittar felet.

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

## #6 — aasah, 2003-12-15T21:24Z

Gissningsvis är felet i "GROUP BY"-klausulen.

**Du skrev:**
SELECT p_refuser, p_refmedlid, COUNT(p_refuser) AS antal 
FROM poang 
GROUP BY p_refuser 
ORDER BY antal DESC LIMIT 5";

**Jag gissar att följande blir rätt:**
SELECT p_refuser, p_refmedlid, COUNT(p_refuser) AS antal 
FROM poang 
GROUP BY p_refuser,  **p_refmedlid**
ORDER BY antal DESC LIMIT 5";

När man försöker ta ut fler kolumner än de man grupperar över tillsammans med aggregerande funktioner (count, average, ... et c) brukar det leda till fel.

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

## #7 — K@llen, 2003-12-15T23:13Z

> **aasah skrev:**
>
> När man försöker ta ut fler kolumner än de man grupperar över tillsammans med aggregerande funktioner (count, average, ... et c) brukar det leda till fel.

Normalt är det så, dock inte i mysql. För de har lite egna regler här och där. 
<http://www.mysql.com/doc/en/GROUP-BY-hidden-fields.html>

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

## #8 — lunne82, 2003-12-15T23:28Z

Pedda, prova göra som K@llen tipsade om:

```php
$result = mysql_query($sql) or die( mysql_error() );
```

 

Brukar bli lättare då...  :)

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

---

Tråden på webben: https://www.webforum.nu/amne/php/92516-warning-mysql-fetch-assoc
