Het geeft deze melding:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/httpd/vhosts/duursportersweb.nl/httpdocs/links/overzicht.php on line 11
Voor de 1000-ste keer: Controleer altijd of je query wel is gelukt! Je weet zeker dat deze vroeg of laat zal MISlukken, dat blijkt nu al wel.
$result = mysql_query($query); // dit heb je al
// dit onder deze regel zetten:
if(!$result){ // query is mislukt
echo 'Fout: '.mysql_error().' met query: '.$query;
die(); // kan beter...
}
// rest van je script
Fout: 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 le.categorie = le_categorie.categorie' at line 1 met query: SELECT le.naam, le.site, le_categorie.categorieFROM le,le_categorie WHERE le.categorie = le_categorie.categorie
Dit is de query:
SELECT le.naam, le.site, le_categorie.categorieFROM le,le_categorie WHERE le.categorie = le_categorie.categorie
Zoals je kunt zien, is de FROM vastgeplakt aan le_categorie.categorie: le_categorie.categorieFROM Daar hoort natuurlijk nog een spatie tussen te staan.
Oplossing: Noteer je queries over meerdere regels zonder al die extra quotes en punten, dat maakt het een stuk overzichtelijker:
$query = "
SELECT
le.naam,
le.site,
le_categorie.categorie
FROM
le,
le_categorie
WHERE
le.categorie = le_categorie.categorie
";
@SanThe: Helemaal mee eens, daar ging ik ook van uit. Vandaar dat er ook een stukje code bij zat. Deze heeft het probleem inmiddels ook al aan het licht gebracht. Hopelijk ziet Erwin nu ook het nut van dit soort controles. Iedere aanname 'het zal wel goed gaan' is een toekomstig probleem.
Ik weet nog dat ik hiermee goed "nat" ging om daarna nooit meer deze fout te maken en dus te checken want dat is wat je keer op keer doet in PHP alles checken en nooit ervan uit gaan dat "iets" goed gaat.