Ergebnis 1 bis 6 von 6

Thema: Datenbank-Aktion: Was muss bei phpMyAdmin ins "Ersetzen"-Feld eingetragen werden?

  1. #1
    Contao-Fan Avatar von grashalm
    Registriert seit
    17.06.2010.
    Ort
    Mainz
    Beiträge
    260
    Contao-Projekt unterstützen

    Support Contao

    Standard Datenbank-Aktion: Was muss bei phpMyAdmin ins "Ersetzen"-Feld eingetragen werden?

    Liebe Community,

    habe vor kurzem eine Testversion 5.2.2 aufgesetzt und die Inhalte meiner Live-Seite (4.13.30) dorthin übertragen. Da ich auf der Live-Seite das ce_player-Template für Videos im Querformat mit dem Dateinamen
    "ce_player_video_quer___coco.html5" angepasst hatte, und dieses angepasste Template in der Testversion gelöscht habe, weil ich jetzt das Original-Video-Template nutzen will, habe ich in der Datenbank in der Spalte "customTpl" den Ausdruck "ce_player_video_quer___coco" durch "content_element/player" ersetzt.

    Wenn ich jetzt die Video-Elemente im Backend aufrufe, steht dort unter dem Inhaltselement-Template jetzt: "Unbekannte Option: content_element/player". Ich kann jetzt natürlich im dortigen Dropdown-Menü das Template "content_element/player [ContaoCore]" aufrufen, und das Ganze händisch korrigieren, allerdings müsste ich das dann in über 160 Video-Elementen tun, und ich würde das gerne elegant über "Suchen + Ersetzen" in der Datenbank lösen. Aber welche Zeichenfolge genau muss ich dort in das "Ersetzen"-Feld eingeben, damit im Inhaltselement-Template der Videos überall das twig-Template des Contao Core "content_element/player [ContaoCore]" steht?
    Geändert von grashalm (23.09.2023 um 21:19 Uhr)
    wie gut, dass es contao gibt! wie gut, dass es spooky und euch alle gibt!

  2. #2
    Contao-Fan Avatar von Fehrmann
    Registriert seit
    04.07.2009.
    Ort
    Wismar
    Beiträge
    580
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hi,

    wäre es nicht das einfachste, einen per Backend zu ändern und sich dann den Inhalt der Spalte in der Datenbank anzusehen. Diesen Inhalt dann per SQL einmal auf alle anderen Updaten?

    Gruss
    René
    Software-Entwickler Backend/Frontend

  3. #3
    Contao-Fan Avatar von grashalm
    Registriert seit
    17.06.2010.
    Ort
    Mainz
    Beiträge
    260
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Réné,

    ja, Du hast Recht, darauf bin ich gestern nicht gekommen. Ich habe das also eben durchexerziert und festgestellt, dass die Datenbankspalte von "customTpl" an der besagten Stelle tatsächlich leer ist, also keinerlei Eintrag enthält. Soll ich jetzt bei Ersetzen "" eintragen, oder soll ich alle betreffenden Datensätze markieren und diese Spalte leeren, oder wie mache ich das am besten?
    Ich kann mich daran erinnern, dass ich gestern auch mal versucht habe, das Ersetzen-Feld einfach nur leer zu lassen, das hat aber nicht funktioniert...
    wie gut, dass es contao gibt! wie gut, dass es spooky und euch alle gibt!

  4. #4
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.719
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von grashalm Beitrag anzeigen
    "Suchen + Ersetzen" in der Datenbank
    das machst Du per "UPDATE"

    ein "Überschreiben"
    Code:
    UPDATE tl_content
    SET customTpl = ''
    -- oder
    UPDATE tl_content
    SET customTpl = 'was-auch-immer-hier-rein-soll'

    für ein "Ersetzen" kannst Du noch Bedingungen anknüpfen, wenn das passieren soll
    Code:
    UPDATE tl_content
    SET customTpl = ''
    WHERE customTpl = 'dies-und-das'
    https://www.w3schools.com/mysql/mysql_update.asp

  5. #5
    Contao-Fan Avatar von grashalm
    Registriert seit
    17.06.2010.
    Ort
    Mainz
    Beiträge
    260
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Vielen Dank, Zonky!

    Das hat wunderbar geklappt!!! Ich brauchte tatsächlich das 3. Snippet mit der Bedingung. Super, wieder was gelernt!
    wie gut, dass es contao gibt! wie gut, dass es spooky und euch alle gibt!

  6. #6
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.719
    User beschenken
    Wunschliste

    Standard

    ein "Ersetzen" innerhalb eines Stings/Textes gibt es natürlich auch - das wäre z. B.

    Code:
    UPDATE tl_content
    SET my_col = REPLACE(my_col, ' ', '-')
    würde den (Text)Inhalt von Spalte "my_col" nehmen und alle Leerzeichen (' ') ersetzen mit einem Strich ('-') und dann wieder der Spalte "my_col" zurück schreiben

    man kann hier natürlich auch wieder ein WHERE anfügen für Bedingungen

    Das muss natürlich nicht in die selbe Spalte zurück - das könnte auch in eine andere Spalte sein inkl. Umwandlung in Kleinschreibung

    Code:
    UPDATE tl_content
    SET alias = REPLACE(LOWER(my_text), ' ', '-')
    siehe https://www.w3schools.com/sql/func_mysql_replace.asp

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •