Maar dat is een andere foutmelding dan de eerste, die mogelijk op een compleet andere plek zijn oorsprong heeft.
Het kan waarschijnlijk in ieder geval geen kwaad om de tekstuele indexen te voorzien van 'quotes', anders denkt PHP dat het constanten betreft.
Als dat de problemen niet oplost zullen we even naar de laatste (correcte) foutmelding moeten kijken, en nagaan op welke regels en variabelen deze precies betrekking heeft.
Beste Thomas,
In PHP code zelf moeten de indexen van dubbele quotes voorzien worden. In het SQL statement echter niet want dan krijg ik een 'PARSE' error: Parse error: syntax error, unexpected '"', expecting....
Merkwaardig genoeg blijkt enkele indexering in een SQL statement wel te werken, zoals bv.:
."where FT.FORM_NR = '$FCCB[FNR]' " uit een ander stuk SQL.
Van zodra ik echter dubbele indexering gebruik zoals in mijn vb: '$FCCB[FormNrDetails][application_id]' werkt het niet meer.
"In PHP code zelf moeten de indexen van dubbele quotes voorzien worden. In het SQL statement echter niet want dan krijg ik een 'PARSE' error"
Zeker wel.
<?php
$sql = "SELECT
FORM_NR
FROM
C_APPLICATS_11 ap
WHERE
FORM_NR = '" . $FCCB['FNR'] . "'";
?>
EDIT je hebt het twee keer over een notice. Dit is niet perse een keiharde fout.
De eerste is dat de index van FormNrDetails niet is gedefinieerd dus deze bestaat niet.
De tweede is dat je een array wilt gebruiken alsof het een string is.
Quotes om indexen is niet hetzelfde als quotes om een complete PHP-variabele ;).
Voor de goede orde zouden ook alle DATA-delen in jouw SQL ge-escaped moeten worden. En dit is alleen veilig in combinatie met quotes, dit keer in de SQL :).
Bijvoorbeeld:
<?php
$query =
"SELECT *
FROM C_APPLICATS_11 ap, C_FORM_TYPES_08 ft
WHERE ap.application_id = '".$db->real_escape_string($FCCB['FormNrDetails']['application_id'])."'"
...";
?>
Waarbij $db jouw database object is, er vanuitgaande dat je MySQLi gebruikt.
Mogelijk is het ook een goede gewoonte om JOINs tussen tabellen ook als JOINs uit te schrijven, in plaats van deze in het WHERE-statement op te nemen. Zo scheid je condities en verbanden beter.
Dus:
SELECT ...
FROM C_APPLICATS_11 ap
INNER JOIN C_FORM_TYPES_08 ft ON (ft.application_id = ap.application_id)
WHERE ...