Datenbankaktionen

Fragen zur Implementierung und/oder Anpassung von ConPresso 4 werden in diesem Forum diskutiert.
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Datenbankaktionen

Beitrag von MarkusR »

Aus ConPresso 3.4.x kennt man ja die Möglichkeit die Datenbank von Altlasten zu befreien.

Vermutlich wird das ConPresso-Team hierzu in einer der kommenden Versionen etwas nachliefern (was auch schon der Quellcode verrät), aber für alle, die nicht warten können:

_include/basic_navigation.inc.php

FINDE

Code: Alles auswählen

// FIXME cleanup database
DANACH EINFÜGEN

Code: Alles auswählen

		// Datenbankfunktionen **************
		$GLOBALS['navigation']['System'][] = array(
            'caption'=>'Datenbank',
            'url'=>BASE_REL.'_admin/database_cleanup.php'
        );

        $GLOBALS['navigation']['System'][] = 'space';
		// Datenbankfunktionen **************
und anschließend noch die Datei database_cleanup.php ins Verzeichnis _admin kopieren.

WICHTIG: Die ausgeführten Aktionen können nicht rückgängig gemacht werden. Die Nutzung erfolgt auf eigene Gefahr und darf nur stattfinden, wenn vorher ein komplettes Datenbankbackup durchgeführt wurde!
Dateianhänge
datenbankaktionen.gif
datenbankaktionen.gif (2.41 KiB) 26579 mal betrachtet
database_cleanup.zip
(1.28 KiB) 1538-mal heruntergeladen
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
Rappi
ConPresso-User
Beiträge: 97
Registriert: 05.05.2006 11:15
Wohnort: Magdeburg
Hat sich bedankt: 20 Mal
Danksagung erhalten: 1 Mal

Beitrag von Rappi »

super Funktion :D

danach habe ich schon lange gesucht.

siehe: http://community.conpresso.de/viewtopic ... 1&lighter=

DANKE, DANKE, DANKE
Marko Rappholz
Maverick
ConPresso-User
Beiträge: 71
Registriert: 01.01.1970 01:00
Hat sich bedankt: 2 Mal

Beitrag von Maverick »

das ist genau die Funktion die ich gesucht habe.

Wenn man dem erwähnten code noch die folgende Abfrage einbaut, wird er anstatt allen Redakteuren nur den Admins angezeigt (kann unter umständen noch hilfreich sein :wink: ):

Code: Alles auswählen

if ($_SESSION['SID_user']['admin']>=ROLE_SUPERUSER) {
.....code.....
}
Der komplette Code sieht dann in etwa so aus:

Code: Alles auswählen

 // Datenbankfunktionen ************** 
if ($_SESSION['SID_user']['admin']>=ROLE_SUPERUSER) {
      $GLOBALS['navigation']['System'][] = array( 
            'caption'=>'Datenbank', 
            'url'=>BASE_REL.'_admin/database_cleanup.php' 
        ); 

        $GLOBALS['navigation']['System'][] = 'space';
}
      // Datenbankfunktionen **************
Jedoch habe ich zur Zeit gerade ein Problem mit der Artikelsortierung im Modul "Gästebuch". Das Problem besteht seit ich mit dem erwähnten code alte Artikel und Artikelversionen gelöscht habe! Ich werde der Sache mal nachgehen...
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Beitrag von MarkusR »

Matthias hat hier das Verfahren zur Sortierung beschrieben:
http://community.conpresso.de/viewtopic.php?t=2999

Dabei weiß ich nicht, wie mögliche Lücken in der Indizierung ein Problem darstellen könnten...
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Beitrag von MarkusR »

Maverick hat geschrieben:das ist genau die Funktion die ich gesucht habe.

Wenn man dem erwähnten code noch die folgende Abfrage einbaut, wird er anstatt allen Redakteuren nur den Admins angezeigt (kann unter umständen noch hilfreich sein :wink: ):

Code: Alles auswählen

if ($_SESSION['SID_user']['admin']>=ROLE_SUPERUSER) {
.....code.....
}
Der komplette Code sieht dann in etwa so aus:

Code: Alles auswählen

 // Datenbankfunktionen ************** 
if ($_SESSION['SID_user']['admin']>=ROLE_SUPERUSER) {
      $GLOBALS['navigation']['System'][] = array( 
            'caption'=>'Datenbank', 
            'url'=>BASE_REL.'_admin/database_cleanup.php' 
        ); 

        $GLOBALS['navigation']['System'][] = 'space';
}
      // Datenbankfunktionen **************
Jedoch habe ich zur Zeit gerade ein Problem mit der Artikelsortierung im Modul "Gästebuch". Das Problem besteht seit ich mit dem erwähnten code alte Artikel und Artikelversionen gelöscht habe! Ich werde der Sache mal nachgehen...
Nur der Vollständigkeit halber:

Wenn man es an der von mir genannten Stelle einbaut ist es ohnehin nur für Administratoren sichtbar. Diese Ergänzung ist also überflüssig oder eben nur notwendig, wenn man es woanders einbauen möchte...
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
Matthias V
Modul-Entwickler
Beiträge: 1251
Registriert: 01.01.1970 01:00
Wohnort: Sondershausen
Hat sich bedankt: 54 Mal
Danksagung erhalten: 147 Mal
Kontaktdaten:

mod_database_cleanup

Beitrag von Matthias V »

Da ich gerade dabei bin alle Conpresso-Modifizierungen, die ich bei einem Update erneut durchführen müsste in Module zu stecken, gibt es hier auch das mod_database_cleanup.

Es hat die gleiche Funktionalität, wie die Modifizierung von Markus (auch die gleiche database_cleanup.php), nur dass es einen Eintrag in die Navi packt.

Gruß Matthias V

P.S. Man könnte diesen Navigationspunkt natürlich auch hiermit: http://community.conpresso.de/viewtopic.php?t=3793 einhängen. Aber so ist es einfach zusammenhängender.
Dateianhänge
mod_database_cleanup.zip
(2.11 KiB) 1370-mal heruntergeladen
mod_Guestbook 4.1.0

Features:
- Einträge als ConPresso-Artikel
- benutzt Templates, Rubriken, ...
- Captcha
- BB-Code + Smilies + Zitieren
- Badwords
- Anonymisierung
SebastianG
ConPresso-User
Beiträge: 72
Registriert: 04.04.2009 20:01
Hat sich bedankt: 29 Mal
Danksagung erhalten: 3 Mal

aufpassen bei mod_contact

Beitrag von SebastianG »

Das war sehr hilfreich - vielen Dank!

Ich hoffe, ich weise auf nichts falsches hin:

Vorsicht:
das mod_contact-Template - nicht löschen!

Dieses wurde bei mir nach der Bereinigung mit Hilfe vom mod_database_cleanup von Matthias
als unbenutzt und somit löschbar angezeigt.

Es wird im Modul "Kontakt" (welches sich in die CMS-Navi unten einpflanzt) unter "Einstellungen" als entsprechendes Template ausgewählt und aktiv genutzt.
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Beitrag von MarkusR »

Das stimmt natürlich, aber...

was hat das mit dem Löschen von Artikeln zu tun???

Grundsätzlich sollte der Administrator schon wissen, welche Templates er benötigt. Nur weil ein Template löschbar ist (das sind am Anfang ALLE außer "Standard" sowie ALLE, die man gerade neu erstellt hat) muß man es ja nicht löschen. :wink:

Auch die Datenbank sollte man besser nicht löschen...
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
SebastianG
ConPresso-User
Beiträge: 72
Registriert: 04.04.2009 20:01
Hat sich bedankt: 29 Mal
Danksagung erhalten: 3 Mal

Beitrag von SebastianG »

MarkusR hat geschrieben: was hat das mit dem Löschen von Artikeln zu tun???
Diesen Thread habe ich gefunden, als ich danach suchte, wie ich Template-Versuche wieder entfernen kann - gerade wenn diese de facto & aktuell nicht "in Gebrauch" sind, jedoch noch als in Gebrauch angezeigt werden.

Mein Post ist ein einfacher Hinweis, der anderen Mitstreitern das Leben erleichtern kann, wenn sie beim ausprobieren des mod_database_cleanup das mod_contact-Template nicht gleich löschen, auch wenn dieses eben als "unused" gekennzeichnet ist.

"Schöner" wäre es natürlich, wenn dieses Template auch als "in Gebrauch" gekennzeichnet wäre ;)
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Beitrag von MarkusR »

Das liegt in der Natur von mod_contact, daß es das Template nur als "Durchlaufstation" benutzt.

mod_form (das man als universelles Kontaktmodul benutzen kann) macht dies anders, weil die Eingaben grundsätzlich als Artikel gespeichert werden (und somit das Template als "benutzt" erscheint) und der Mailversand nur eine zusätzliche Option ist.

Als gute Lösung hat sich erwiesen hinter solche Templates den Namen des Moduls zu schreiben, also "Kontakt [Kontakt-Modul]", wie das z.B. mod_form von sich aus macht:
Bewerbung [FORM]
Buchung [FORM]
Feedback [FORM]
Kontakt [FORM]
etc.

Das kann der ambitionierte Administrator auch von Hand machen!

Vorsicht: als ungeeignet erweist sich eine Kennzeichnung wie "Kontakt (bitte nicht löschen)" weil dies garantiert als erstes gelöscht wird!

Grundsätzlich mußt Du hier aber bedenken, daß Du hier über einen Bereich schreibst, den nur Administratoren und Superuser zu Gesicht bekommen, deren Eignung für die Verwaltung des Webauftrittes vorher geklärt werden sollte und die auch die Befähigung zur Erstellung eines Backups aufweisen sollten, so daß unabhängig von der Kennzeichnung gar keine Gefahr bestehen kann!
Mein Post ist ein einfacher Hinweis, der anderen Mitstreitern das Leben erleichtern kann, wenn sie beim ausprobieren des mod_database_cleanup das mod_contact-Template nicht gleich löschen, auch wenn dieses eben als "unused" gekennzeichnet ist.
Nochmal: egal ob man mod_database_cleanup benutzt oder nicht... das Template von mod_contact wird niemals als benutzt gekennzeichnet, wenn man es nicht irrtümlich doch mal benutzt hat (dafür hätte es aber der Administrator als "verfügbar" in den Rubrikeinstellungen kennzeichnen müssen und hätte somit den Hauptfehler selbst gemacht).
Daher wäre es viel sinnvoller diesen Hinweis im Forum für mod_contact zu posten, da Deine Beobachtung zwar richtig ist, aber eben nichts mit mod_database_cleanup zu tun hat...
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Beitrag von MarkusR »

Noch ein Hinweis:

Wer etwas über die tatsächliche Nutzung von Templates erfahren möchte sollte einen Blick auf die Statistik und dort "Templates" werfen... :shock:
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

Ich muss Markus einmal mehr 100% recht geben. Templates, auch und gerade die "Versucherle", lösche ich höchstens kurz vor der Übergabe eines fertigen Projektes an den Kunden. Und auch dann erst nachdem ich ein Datenbank-Backup (Export) gemacht habe und sicher gestellt habe (durch Einspielen in eine lokale CPO-Installation), dass dieses einwandfrei funktioniert.

Bis dahin - also bis zum Löschen - kennzeichne ich Templates i.d.R. ähnlich wie Markus. "Versuchs-Templates", von denen ich annehme, dass ich sie später löschen werde, schiebe ich immer so aus dem Fokus, dass ich sie mit einem vorangestellten Unterstrich benenne - dann werden sie ganz unten in der Template-Auflistung "eingeordnet".

Auch "Versuchs-Templates" erwiesen sich schon manches Mal als recht hilfreich, oft kann man Teile und Ideen davon noch wieder verwenden, bei manchen Problemstellungen können sie auch schlicht helfen, frühere Lösungsversuche zu dokumentieren, angefangene Lösungen wieder aufzunehmen,...
Günther Ludwig
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Beitrag von MarkusR »

Der Vollständigkeit halber, weil ich es auch schon fast vergessen habe:

Hier gibt es eine zweite, verbesserte Version von database_cleanup
http://community.conpresso.de/viewtopic ... 3418#23418
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Gandalf
ConPresso-Checker
Beiträge: 108
Registriert: 01.01.1970 01:00
Hat sich bedankt: 6 Mal
Danksagung erhalten: 5 Mal

Beitrag von Gandalf »

Hallo balu,

leider ist dieses nette feature bis heute (V 4.1.2) noch nicht integriert. Könntest Du dies auf die todo Liste für die kommende Version setzen?

Danke! Gruß gandalf
Benutzeravatar
hscha
ConPresso-Experte
Beiträge: 714
Registriert: 22.02.2006 22:00
Wohnort: Berlin
Hat sich bedankt: 217 Mal
Danksagung erhalten: 26 Mal
Kontaktdaten:

Beitrag von hscha »

MarkusR hat geschrieben:Der Vollständigkeit halber, weil ich es auch schon fast vergessen habe:

Hier gibt es eine zweite, verbesserte Version von database_cleanup
http://community.conpresso.de/viewtopic ... 3418#23418
Hallo Markus,
kann man "database cleanup enhanged" auch für CPO 4.1.2 einsetzen?

Grüße von Horst
Antworten