Ik heb de volgende sql-query


SELECT rugnummer, achternaam, tbl_kaarten.ikoon, CASE 
WHEN aantaldoelpunten = 1 THEN '<img src="1bal.png" alt="icon" />' 
WHEN aantaldoelpunten = 2 THEN '<img src="2bal.png" alt="icon" />' 
WHEN aantaldoelpunten = 3 THEN '<img src="3bal.png" alt="icon" />' 
WHEN aantaldoelpunten = 4 THEN '<img src="4bal.png" alt="icon" />' 
WHEN aantaldoelpunten = 5 THEN '<img src="5bal.png" alt="icon" />' 
WHEN aantaldoelpunten = 6 THEN '<img src="6bal.png" alt="icon" />' 
WHEN aantaldoelpunten = 7 THEN '<img src="7bal.png" alt="icon" />' 
WHEN aantaldoelpunten = 8 THEN '<img src="8bal.png" alt="icon" />' 
WHEN aantaldoelpunten = 9 THEN '<img src="9bal.png" alt="icon" />' 
END AS aantaldoelpunten FROM tbl_opstellingn  
LEFT JOIN tbl_spelers ON tbl_opstellingn.spelerID = tbl_spelers.spelerID  
LEFT JOIN ktbl_club_speler ON tbl_opstellingn.spelerID = ktbl_club_speler.spelerID  
LEFT JOIN tbl_kaarten ON tbl_opstellingn.spelerID = tbl_kaarten.spelerID  
LEFT JOIN 
( SELECT COUNT(*) AS aantaldoelpunten, tbl_doelpunten.spelerID
FROM tbl_doelpunten  
LEFT JOIN tbl_opstellingn ON tbl_doelpunten.spelerID = tbl_opstellingn.spelerID
WHERE thuis_uit = 'thuis' AND tbl_doelpunten.wedstrijdID = '109'
GROUP BY tbl_opstellingn.opstellingpos ) a 
ON tbl_spelers.spelerID = a.spelerID WHERE tbl_opstellingn.wedstrijdID = '109' AND thuis_uit = 'thuis' AND clubID = '11' limit 0, 11


Wanneer ik deze query uitvoer in MySQL gaat alles prima. Maar zodra ik hem op mn site laat zien krijg ik de volgende error:


 MySQL Error#: 1064

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 ') f ON tbl_spelers.spelerID = f.spelerID WHERE tbl_opstellingn.wedstrijdID = '10' at line 2


Ik begrijp er niets meer van. Weet iemand wat er aan de hand is?

Toevoeging op 23/10/2013 23:14:03:

Ik heb nu de spatie tussen "(" en "select count" weggehaald. Nu krijg ik geen 1064-error maar. MAar bij het testen van de pagina krijg ik nu de volgende error:

"Parse error: syntax error, unexpected '1' (T_LNUMBER) in C:\xampp\htdocs\................php on line 261"

line 261 is overigens bij bovenstaande sql-query.
restje.... ;-)

Wat er nog mist is de tabelnaam, een eventuele WHERE-voorwaarde en de rest van de query.
Waarom een hele lap query van tiental regels opnieuw plaatsen, terwijl je hem ook even op het forum kan inkorten.
OK. Dat wordt dus in mijn geval:


<?php
$result= $mysqli->query("SELECT aantaldoelpunten FROM tbl_opstellingn  
 LEFT JOIN tbl_spelers ON tbl_opstellingn.spelerID = tbl_spelers.spelerID  
LEFT JOIN ktbl_club_speler ON tbl_opstellingn.spelerID = ktbl_club_speler.spelerID  
LEFT JOIN tbl_kaarten ON tbl_opstellingn.spelerID = tbl_kaarten.spelerID  
LEFT JOIN  (
SELECT COUNT(*) AS aantaldoelpunten, tbl_doelpunten.spelerID FROM tbl_doelpunten  
LEFT JOIN tbl_opstellingn ON tbl_doelpunten.spelerID = tbl_opstellingn.spelerID  
WHERE thuis_uit = 'thuis'  
AND tbl_doelpunten.wedstrijdID = '109'  
GROUP BY tbl_opstellingn.opstellingpos ) f ON tbl_spelers.spelerID = f.spelerID  
WHERE tbl_opstellingn.wedstrijdID = '109'  AND thuis_uit = 'thuis'  
AND clubID = '11' limit 0, 11"
while ($row = $result->fetch_assoc()) {
echo '<img src=' . $row['aantaldoelpunten'] . 'bal.png alt=icon />';
}
?>


En waar zet ik dat dan in mijn code neer?

Reageren