Beim Schreiben in Datenbank werden Backslash hinzugefügt (escapen)

  • Hallo Community,


    ich habe eine eigene Komponente geschrieben, welche externe RSS-Feeds und in der Joomla Datenbank speichert. Im Backend verwaltet ich die Quellen und die einzelnen Feeds.


    Über einen Cronjob, wird eine versteckte Frontend Seite in Joomla aufgerufen, die das Speichern der Feeds in die Datenbank übernimmt.


    Um die Daten zu Speichern nutze ich folgenden Code:



    Nun habe ich ein Problem mit der Funktion $db->escape(). Vor den Sonderzeichen wird immer ein Backslash hinzugefügt und so in der Datenbank gespeichert. Und im Backend auch angezeigt.


    Was mache ich falsch?


    teccrow

    • Hilfreich

    Moin,


    quote() escaped per Default die Daten die du übergibst direkt mit, dadurch dass du aber nochmal einen manuellen escape() Aufruf drinne hast, hast du das doppelt, woraus die beschriebenen Backslashs resultieren:
    https://github.com/joomla/joom…database/driver.php#L1782


    Escape kannst du also weglassen.


    LG
    David