Avatar billede kack Nybegynder
31. marts 2005 - 20:51 Der er 7 kommentarer og
1 løsning

You have an error in your SQL syntax

Hej!

Jeg får en fejl med min mysql query. Hvad er fejlen her?

<?
echo "<tr>";
$result = mysql_query("SELECT * FROM mm_forums  ORDER BY id WHERE kategori='1' limit 2,0") or die(mysql_error());
$data = mysql_fetch_array($result);
print "..."?>

Jeg får denne fejl:

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 'WHERE kategori=1 limit 2,0' at line 1

På forhånd tak
Avatar billede haren Nybegynder
31. marts 2005 - 20:52 #1
Du kan ikke finde forespørgsler mellem 2-0 - det skal vel være 0-2.
Så skal den se sådan her ud.. :D

<?
echo "<tr>";
$result = mysql_query("SELECT * FROM mm_forums  ORDER BY id WHERE kategori='1' limit 0,2") or die(mysql_error());
$data = mysql_fetch_array($result);
print "..."?>
Avatar billede bromer Nybegynder
31. marts 2005 - 20:53 #2
din WHERE skal være før din ORDER såsom:

$result = mysql_query("SELECT * FROM mm_forums WHERE kategori='1' ORDER BY id  limit 2,0") or die(mysql_error());
Avatar billede bromer Nybegynder
31. marts 2005 - 20:56 #3
bortset fra det har haren ret. Du skal bytte om på dine tal. Måske bliver det mere klart hvis din LIMIT bliver skrevet ud med LIMIT og OFFSET såsom:

$result = mysql_query("SELECT * FROM mm_forums WHERE kategori='1' ORDER BY id OFFSET 0 LIMIT 2") or die(mysql_error());

idet du starter på toppen har du faktisk ikke brug for noget offset så forrige query er ækvivalent med:

$result = mysql_query("SELECT * FROM mm_forums WHERE kategori='1' ORDER BY id LIMIT 2") or die(mysql_error());
Avatar billede kack Nybegynder
31. marts 2005 - 21:01 #4
Takker :D Det virker sådan set :)

Men der er stadig en lille ting galt. Hvorfor udskriver den ikke de jeg har i min mysql database? Dette er hele min kode:

<?
echo "<tr>";

$result = mysql_query("SELECT * FROM mm_forums WHERE kategori='1' ORDER BY id") or die(mysql_error());
print "
<tr>
<td class='sforum'><a href='?side=visforum.php&id=".$data['id']."'>".$data['navn']."</a> : ".$data['beskrivelse']."</td><td class='sforum2'>".$data['emner']."</td> <td class='sforum3'>".$data['indlaeg']."</td>
</tr>";?>

Det eneste den udskriver er et :
Avatar billede bromer Nybegynder
31. marts 2005 - 21:06 #5
Du henter jo aldrig data ud.. prøv med


$result = mysql_query("SELECT * FROM mm_forums WHERE kategori='1' ORDER BY id") or die(mysql_error());
while($data = mysql_fetch_array($result)) {
print "
<tr>
<td class='sforum'><a href='?side=visforum.php&id=".$data['id']."'>".$data['navn']."</a> : ".$data['beskrivelse']."</td><td class='sforum2'>".$data['emner']."</td> <td class='sforum3'>".$data['indlaeg']."</td>
</tr>";
}
?>
Avatar billede kack Nybegynder
31. marts 2005 - 21:08 #6
Nåå ja forhelvede.. Dum fejl, men er træt :)

Men takker! Det virkede! Laver du lige et svar, så får du points?
Avatar billede bromer Nybegynder
31. marts 2005 - 21:08 #7
man laver ikke altid super kode når man er træt :)
Avatar billede kack Nybegynder
31. marts 2005 - 21:11 #8
Hehe :) Ja.. Det er rigtigt :D
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