Avatar billede xysto Nybegynder
01. november 2004 - 20:10 Der er 12 kommentarer og
1 løsning

MySQL result resource fejl

Jeg har følgende kildekode, men når jeg kører scriptet og trykker send, får jeg følgende fejlmelding:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /net/users/a37/734/horsensokdk/www/xysto/kom.php on line 25

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /net/users/a37/734/horsensokdk/www/xysto/kom.php on line 41

Koden:

<?
include("top.php")
?>


<?
$db=mysql_connect("xxx","xxx","xxx");
mysql_select_db("xxx",$db);
if ($skriv){
if ($feltnavn == "" OR $feltbesked == "" OR $feltemail == ""){

echo "<center><b>Du mangler at udfylde et eller flere felter...</b></center><br>";
}else{

$feltdato = date('d/m - Y');
mysql_query("INSERT INTO xkom (navn, dato, kom, email, nyhedsid) VALUES ('$feltnavn','$feltdato','$feltbesked','$feltemail','$kom')");
echo "<html><head>";
echo '<meta http-equiv="Refresh" content="0;url=kom.php?kom='.$kom.'">';
echo "</head></html>";
die;
}
}

$foresp=mysql_query("SELECT * FROM xnyhed WHERE id=$kom");
while ($raekke = mysql_fetch_array($foresp)) {
extract($raekke);

echo"<font class='overskrift'>$overskrift</font><br>";
$daton="YYYYmmdd";
$daton=substr($dato,6,8)."/".substr($dato,4,2)."-".substr($dato,0,4);
echo "<font class='dato'>$daton</font>";
echo "<BR><font class='tekst'>$tekst</font><br><br>";


}

echo '<font class="stor">Kommentarer:</font><br><br>';


$foresp=mysql_query("SELECT * FROM xkom WHERE nyhedsid=$kom order by id");
while ($raekke = mysql_fetch_array($foresp))
{
extract($raekke);
echo"<table border=0 cellpadding=0 cellspacing=0 width=100% align=center>";
echo "<font class='dato'>$dato</font>";
echo"<tr><td class=kant2><font class='tekst'>Skrevet af </font><font class='overskrift'><a href='mailto:$email' class='link'>$navn</a></font><br>";


echo "<font class='tekst'>$kom</font></td></tr></table><br>";


}



?>


<FORM METHOD=POST ACTION=<? echo $PHP_SELF;?>>
<INPUT TYPE=hidden NAME=skriv VALUE=1>
<table border="0" width="450" align="left">
<?
echo '<tr><td><font class="tekst">Navn</td><td><INPUT TYPE=text NAME=feltnavn VALUE="'.$feltnavn.'" size="45"></td><br></tr>';

echo '<tr><td><font class="tekst">E-mail</td><td><INPUT TYPE=text NAME=feltemail VALUE="'.$feltemail.'" size="45"></td><br></tr>';
echo '<tr><td colspan=2><font class="tekst">Kommentar:<br></font>';
echo '<TEXTAREA NAME=feltbesked COLS=41 ROWS=5>'.$feltbesked.'</TEXTAREA><br>';

echo '<INPUT TYPE=submit VALUE="Skriv"><input type="hidden" name="kom" value="'.$kom.'">';
?>
</td>
</tr>
</table>

</FORM>







</td>

<td width="10"></td>
<td valign="top" class="kant" width="150"><font class="overskrift">Misc.</font><br><br><font class="tekst"></font>
</td>

<td width="10"> </td>

Hvad har jeg lige gjort forkert??

MVH Kim Højmark
Avatar billede kokoko Nybegynder
01. november 2004 - 20:21 #1
Hedder dine tabeller xkom og xnyhed?
Avatar billede kokoko Nybegynder
01. november 2004 - 20:23 #2
Hvad er værdi af $kom i de to linjer?
Avatar billede jaw Nybegynder
01. november 2004 - 20:32 #3
Ved den query du sender på linie 25 og 41, at tilføje:
or die(mysql_error());

altså f.eks.:

mysql_query("SELECT * FROM tabel") or die(mysql_error());

...det bør give dig en bedre meddelelse til at lokalisere fejlen...
Avatar billede xysto Nybegynder
01. november 2004 - 20:43 #4
ja mine tabeller hedder xkom og xnyhed

Værdien af $kom er 316

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near "kommentar"
Avatar billede jaw Nybegynder
01. november 2004 - 21:48 #5
Hvad er det for en query den passer til?
Avatar billede xysto Nybegynder
01. november 2004 - 22:34 #6
den fra tabellen xkom
Avatar billede iss Novice
01. november 2004 - 22:35 #7
Hvilken type er id?
Avatar billede jaw Nybegynder
01. november 2004 - 22:37 #8
Jow, men i det du har pastet ovenstående, står der da ikke "kommentar" i nogen af de 2 querys?
Avatar billede xysto Nybegynder
02. november 2004 - 10:37 #9
Så er fejlen fundet. I den 2. query havde jeg i tabellen en række, der hed kom. Og den gik så sammen med $kom i min kode. Så jeg ændrede navnet på rækken i tabellen og så var der ikke flere problemer.

Hvis jaw poster et svar, uddeler jeg nogle point. Det var hans første post der til sidst fik mig på sporet
Avatar billede jaw Nybegynder
02. november 2004 - 13:01 #10
Så siger jeg da tak :)
Avatar billede xysto Nybegynder
02. november 2004 - 13:43 #11
Jamen det gør jeg da også
Avatar billede jaw Nybegynder
02. november 2004 - 13:45 #12
Og den kan altid bruges. Du kan også bare få den udskrevet, i stedet for at stoppe resten af kørslen, f.eks.:

mysql_query("SELECT * FROM tabel");
echo mysql_error();

Så kan man som regel få set sig frem til hvor fejlen ligger... :)
Avatar billede xysto Nybegynder
02. november 2004 - 13:46 #13
ok, takker, det vil jeg huske
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester