Gå til innhold

Få feilmelding ved mysql_fetch_array


Anbefalte innlegg

Jeg år denne feilmeldingen:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/6/w91270/www/test/dbtest.php on line 25

ID Felt Tillegg

 

Fra denne koden:

<?PHP
// Åpner databasen
$conn = mysql_connect("xxxxx.xx", "xxxxx", "xxxxx");
mysql_select_db("xxxxx", $conn);

//Kjører sql og legger resultatet inn i resultat
$sql = "select * from test";
$resultat = mysql_query($sql, $conn);

//lage en tabell og skrive ut
echo "<table border=0><tr>";
echo "<td>ID</td>";
echo "<td>Felt</td>";
echo "<td>Tillegg</td></tr>";

//denne while-løkka går så lenge det er poster i resultat
while ($rad = mysql_fetch_array($resultat)) {
$ID = $rad['ID'];
$Felt = $rad['Felt'];
$Tillegg = $rad['Tillegg'];
echo "<tr><td>$ID</td>";
echo "<td>$Felt</td>";
echo "<td>$Tillegg</td></tr>";
}
echo "</table>";

//lukker databasen
mysql_close($conn);
?>

 

Hva er problemet her?

Koden er ikke tilbruk av noeslag, men kun for læring!

Lenke til kommentar
Videoannonse
Annonse

Hvis mysql_query() returnerer 0 rader vil mysql_fetch_array() kjøre en feilmelding.

 

Dette kan løses på denne måten:

 

<?PHP
// Åpner databasen
$conn = mysql_connect("xxxxx.xx", "xxxxx", "xxxxx");
mysql_select_db("xxxxx", $conn);

//Kjører sql og legger resultatet inn i resultat
$sql = "select * from test";
$resultat = mysql_query($sql, $conn);

if(mysql_num_rows($resultat) > 0) { // Her sjekker vi om det er mer enn 0 rader

//lage en tabell og skrive ut
echo "<table border=0><tr>";
echo "<td>ID</td>";
echo "<td>Felt</td>";
echo "<td>Tillegg</td></tr>";

//denne while-løkka går så lenge det er poster i resultat
while ($rad = mysql_fetch_array($resultat)) {
$ID = $rad['ID'];
$Felt = $rad['Felt'];
$Tillegg = $rad['Tillegg'];
echo "<tr><td>$ID</td>";
echo "<td>$Felt</td>";
echo "<td>$Tillegg</td></tr>";
}
echo "</table>";

}

else {
echo "Det er ingen rader i tabellen";
}

//lukker databasen
mysql_close($conn);
?>

Endret av Eirikkkkkk
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...