String-Problem mit dem Zeichen '
bearbeitet von
Hallo Linuchs,
wie gesagt - die Implementierung der Funktion getMitgliederInteressentenPut ist unschuldig. Das brauchen wir nicht.
Das Syntaxhighlighting zeigt das Problem. Und Du hättest den Screenshot nicht im Inspektor, sondern im DOM machen sollen. Aus dem Screenshot errate ich, dass Du im PHP mutmaßlich `<a href='javascript...'>` verwendest und nicht, wie der Inspektor behauptet, `<a href="javascript...">`
Das einzelne Apostroph beendet dann das Attribut und dadurch geht der Rest in die Binsen. Oder den Strandhafer.
Aus der Hüfte geschossen: Behandle im PHP den href-String mit
`htmlentities($href.replace('"', '\"'), ENT_QUOTES)`
Das sind zwei Kontextbehandlungen. htmlentities sorgt dafür, dass der Attributstring das HTML nicht ungültig macht. Unter anderem ersetzt die Funktion "'" durch "'".
Aber du könntest auch den Chor „Shantyclub "Die Brüllaffen"“ haben. Und dann würden Dir die " den JavaScript-Aufruf ruinieren. Die musst Du deshalb durch \" ersetzen. Da PHP in single quoted strings keine Backslashes interpretiert, brauchst Du das \ nicht zu verdoppeln.
Testfälle:
* Sailor's Crew
* Club "Die Brüller"
* Shantygröler "Sailor's Kruh"
_Rolf_
--
sumpsi - posui - obstruxi