Gå til innhold

Sjekke en liten kodesnutt


Anbefalte innlegg

Har lite problem, sikkert kjempelett, men er så ny på php og mysql at jeg ikke finner feilen, håper noen kan hjelpe:

 

Her her feilmeldingen:

 Warning: Supplied argument is not a valig MySQL result resource

in bla../bla../bla../on line 11.

 

og her er kodingen:


<?php 



include "config.php"; 



$db = mysql_connect($db_host,$db_user,$db_pass); 

mysql_select_db ($db_name) or die ("Cannot connect to database"); 

/* We have now connected, unless you got an error message */ 

/* We now select one news post, and bring it into some text boxes */ 

$query = "SELECT title, news FROM news WHERE id = $_GET[id]"; 

$result = mysql_query($query); 

while ($r = mysql_fetch_array($result)) [b]<-----Dette er line 11[/b]

{    

/* This bit sets our data from each row as variables, to make it easier to display */ 

$title=$r["title"]; 

$news=$r["news"]; 

/* Now lets display the titles */ 

   echo "<form name="edit_process.php" method="post" action="index.php?Section=edit_save?id=$_GET[id]"> 

 <p>Title : 

   <input type="text" name="title" value="$title"> 

 </p> 

 <p>News :</p> 

 <p> 

   <textarea name="news" cols="40" rows="6">$news</textarea> 

 </p> 

 <p> 

   <input type="submit" name="Submit" value="Save"> 

 </p> 

</form>"; 

} 

mysql_close($db); 

?>

 

 

Takker for all hjelp.

 

DanielP

Lenke til kommentar
Videoannonse
Annonse
Gjest Slettet-rXRozPkg

Jeg tror feilen ligger i følgende linje:


$query = "SELECT title, news FROM news WHERE id = $_GET[id]"; 

1. Bytt til:

$query = "SELECT title, news FROM news WHERE id = '$_GET[id]'";

 

2. $_GET[id] er en variabel som blir satt i url'en til siden du holder på med, f.eks: www.dinside.no/script.php?id=12345

Har du satt denne vaiabelen til noe? Ellers vil du ikke få returnert noen fra databasen, og følgelig vil du få en feilmelding.

 

3. For å gjøre det leggere å debugge scriptene dine, eller andre du har hentet ned, så bør du legge til or die (som det ligger på mysql_select_db) også på mysql_query. Dette er fordi MANGE feil ligger i selve spørringen du kjører mot databasen, og ikke selve PHP koden.


$result = mysql_query($query) or die("Spørringsfeil: ".mysql_error());

 

Jeg tipper at du kommer til å få en feil ala: ID NULL does not exist hvis du implementerer sistnenvnte kodesnutt.

 

Post feilmeldinger du får når du har gjort alt over, så kan vi hjelpe deg videre... :)

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...