Gå til innhold

Sjekke en liten kodesnutt


Anbefalte innlegg

Skrevet

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

Videoannonse
Annonse
Gjest Slettet-rXRozPkg
Skrevet

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... :)

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...