Eigene Verbindung zur Datenbank

Für ein einfaches 'GlossarEin Glossar ist eine Liste von Wörtern mit beigefügten Erklärungen oder Übersetzungen. Ist es eigenständig spricht man auch von Wörterbuch, als Anhang eines Werkes von Wörterverzeichnis. Das lateinische Wort glossarium bezeichnet dabei als Objekt ein „Buch“, das alte oder fremde Wörter erläutert.', habe ich nach einer Möglichkeit gesucht, Einträge in einer eigenen 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', zu tätigen und aufzulisten. Innerhalb von 'WordPressWordPress (WordPress.org) ist ein freies Content-Management-System, welches ursprünglich zum Aufbau und zur Pflege eines Weblogs entwickelt wurde, da es jeden Beitrag frei erstellbaren Kategorien zuweisen kann und dazu automatisch die entsprechenden Navigationselemente erzeugt. Sie ist Teil der Hosting-Plattform WordPress.com (WordPress).', ist die Syntax etwas anders als man es sich gewohnt ist.

Aber wie ist denn eine Datenbank überhaupt aufgebaut?

Eine Datenbank enthält mindestens eine 'TabelleEine Tabelle besteht aus Spalten und Zeilen.',. Im Fall von 'WordPressWordPress (WordPress.org) ist ein freies Content-Management-System, welches ursprünglich zum Aufbau und zur Pflege eines Weblogs entwickelt wurde, da es jeden Beitrag frei erstellbaren Kategorien zuweisen kann und dazu automatisch die entsprechenden Navigationselemente erzeugt. Sie ist Teil der Hosting-Plattform WordPress.com (WordPress).', sind das mehrere 'TabelleEine Tabelle besteht aus Spalten und Zeilen.',n. Die 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', für das 'GlossarEin Glossar ist eine Liste von Wörtern mit beigefügten Erklärungen oder Übersetzungen. Ist es eigenständig spricht man auch von Wörterbuch, als Anhang eines Werkes von Wörterverzeichnis. Das lateinische Wort glossarium bezeichnet dabei als Objekt ein „Buch“, das alte oder fremde Wörter erläutert.', kommt nun noch dazu.

Für jedes Feld enthält die 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', eine Spalte. In der Spalte ‚glossar_term‘ sind die 'BegriffBeschreibung',e gespeichert, in der Spalte ‚glossar_description‘ die Beschreibung. Wichtig, jede 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', soll eine Spalte mit einer eindeutigen ID für jede Zeile haben. In den Zeilen werden die Daten gespeichert. Eine Zeile bildet einen sogenannten Datensatz.

glossar_ID glossar_term glossar_description
1 'BegriffBeschreibung', Beschreibung
2 Text ist viel Lorem ipsum
3 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', besteht aus Spalten und Zeilen

 

Entstanden sind 4 Funktionen, 3 für die Datenbank, eine für die Navigation zwischen den Funktionen. Die Funktionen können mittels Shortcode in die Seite integriert werden. Ich habe 3 Seiten angelegt, die Erste für das 'GlossarEin Glossar ist eine Liste von Wörtern mit beigefügten Erklärungen oder Übersetzungen. Ist es eigenständig spricht man auch von Wörterbuch, als Anhang eines Werkes von Wörterverzeichnis. Das lateinische Wort glossarium bezeichnet dabei als Objekt ein „Buch“, das alte oder fremde Wörter erläutert.',, eine Auflistung aller 'BegriffBeschreibung',e mit der Beschreibung, die Zweite für das Formular um neue Einträge hinzuzufügen und eine dritte Seite um die Einträge zu bearbeiten.

Auf allen Seiten habe ich mittels [rad-glossar-nav] eine Navigationszeile eingefügt. Damit erreiche ich die Funktionen zur Administration. Die Navigation wird nur angezeigt, wenn man als Administrator eingeloggt ist.

 

Auf der 'GlossarEin Glossar ist eine Liste von Wörtern mit beigefügten Erklärungen oder Übersetzungen. Ist es eigenständig spricht man auch von Wörterbuch, als Anhang eines Werkes von Wörterverzeichnis. Das lateinische Wort glossarium bezeichnet dabei als Objekt ein „Buch“, das alte oder fremde Wörter erläutert.',seite für die Besucher ist die Funktion [rad-glossar-index] eingefügt.

 

Diese Funktion liest den Inhalt der kompletten 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', und gibt ihn alphabetisch sortiert aus.

Mit [rad-glossar-adminlist] füge ich die Funktionen zur Bearbeitung der 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', ein. Sie listet ebenfalls erst mal alle Einträge auf, jedoch nur die Hauptspalte, in diesem Fall den ‚'BegriffBeschreibung',‘. Ein Klick auf auf einen 'BegriffBeschreibung',, zeigt das Bearbeitungsformular an. Es kann nicht gespeichert werden, wenn der 'BegriffBeschreibung', leer ist. Die Beschreibung darf leer sein (auch wenn das keinen Sinn macht).

Das Formular enthält auch einen Löschen-Button. Nach einem Klick darauf erfolgt nochmals eine Nachfrage und der Speichern-Button erhält die Beschriftung ‚Abbrechen‘.

Hinweis zur Optik: Damit im Formular die beiden Buttons nicht aneinender kleben (CSS alleine funktioniert nicht), kommt eine transparente Grafik zum Einsatz.

Auf der Seite für neue Einträge hinzuzufügen ist die Funktion [rad-glossar-admin-insert] eingefügt.

Auch hier kann der Eintrag nicht gespeichert werden, wenn der ‚'BegriffBeschreibung',‘ leer ist.

In 'WordPressWordPress (WordPress.org) ist ein freies Content-Management-System, welches ursprünglich zum Aufbau und zur Pflege eines Weblogs entwickelt wurde, da es jeden Beitrag frei erstellbaren Kategorien zuweisen kann und dazu automatisch die entsprechenden Navigationselemente erzeugt. Sie ist Teil der Hosting-Plattform WordPress.com (WordPress).', haben wir die Eigenheit, dass beim Speichern in die Datenbank das Feldformat mit angegeben werden muss. Was das für einen Sinn macht, ich weiss es nicht. Zu beachten ist dabei, für die Feldnamen und die Feldformate gibt es 2 Arrays, dabei ist auf die identische Reihenfolge der Felder /Formate zu achten.

Möglich sind nur drei Arten von Werten. %s steht für String (Text), %d für Integer (ganze Zahlen) und %f für Float (Gleitkommazahlen).

Für diese Beispiele benötigen Sie eine Datenbanktabelle mit 3 Spalten. Diese können Sie mir folgendem XML-Code erzeugen, indem Sie mit einem Programm wie phpMyAdmin den Code importieren. Der Code erstellt die 'TabelleEine Tabelle besteht aus Spalten und Zeilen.',, 3 Spalten und 3 Zeilen (Datensätze).

Nebst den beiden Spalten für 'BegriffBeschreibung', und Beschreibung brauchen wir in einer 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', grundsätzlich immer auch eine Datensatz-ID. Mit dem Attribut ‚auto increment‘ erreichen wir, dass automatisch eine fortlaufende Nummer vergeben wird. Eine solche ID ist unerlässlich für relationale Verknüpfungen. In diesem Fall verwenden wir die ID um im Bearbeitungsformular die richtigen Daten zu laden und wieder in den richtigen DS zu speichern, sowie zum löschen eines Datensatzes.

Mit dem folgenden XML-Code kann die nötige 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', in der Datenbank erzeugt werden.

 

<?xml version="1.0" encoding="utf-8"?>
<!--
- phpMyAdmin XML Dump
- für R.A.D. 'GlossarEin Glossar ist eine Liste von Wörtern mit beigefügten Erklärungen oder Übersetzungen. Ist es eigenständig spricht man auch von Wörterbuch, als Anhang eines Werkes von Wörterverzeichnis. Das lateinische Wort glossarium bezeichnet dabei als Objekt ein „Buch“, das alte oder fremde Wörter erläutert.',
- Das xxx muss gegen das Präfix Ihrer 'WordPressWordPress (WordPress.org) ist ein freies Content-Management-System, welches ursprünglich zum Aufbau und zur Pflege eines Weblogs entwickelt wurde, da es jeden Beitrag frei erstellbaren Kategorien zuweisen kann und dazu automatisch die entsprechenden Navigationselemente erzeugt. Sie ist Teil der Hosting-Plattform WordPress.com (WordPress).', Datenbank ersetzt werden.
- Das ... muss gegen den Namen der Datenbank ersetzt werden.

-->

<pma_xml_export version="1.0" xmlns:pma="https://www.phpmyadmin.net/some_doc_url/">
<!--
- Structure schemas
-->
<pma:structure_schemas>
<pma:database name="..." collation="utf8_unicode_ci" charset="utf8">
<pma:table name="xxx_rad_glossar">
CREATE TABLE `xxx_rad_glossar` (
`glossar_ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`glossar_term` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`glossar_description` text COLLATE utf8mb4_unicode_ci NOT NULL,
PRIMARY KEY (`glossar_ID`),
KEY (`glossar_term`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
</pma:table>
</pma:database>
</pma:structure_schemas>

<database name="...">
<table name="xxx_rad_glossar">
<column name="glossar_ID"></column>
<column name="glossar_term">'BegriffBeschreibung',</column>
<column name="glossar_description">Beschreibung</column>
</table>
<table name="xxx_rad_glossar">
<column name="glossar_ID"></column>
<column name="glossar_term">Text</column>
<column name="glossar_description">Text ist viel Lorem Ipsum.</column>
</table>
<table name="xxx_rad_glossar">
<column name="glossar_ID"></column>
<column name="glossar_term">'TabelleEine Tabelle besteht aus Spalten und Zeilen.',</column>
<column name="glossar_description">Eine 'TabelleEine Tabelle besteht aus Spalten und Zeilen.', besteht aus Spalten und Zeilen</column>
</table>
</database>
</pma_xml_export>

 

Das folgende CSS enthält alle Klassen die nötig sind das 'GlossarEin Glossar ist eine Liste von Wörtern mit beigefügten Erklärungen oder Übersetzungen. Ist es eigenständig spricht man auch von Wörterbuch, als Anhang eines Werkes von Wörterverzeichnis. Das lateinische Wort glossarium bezeichnet dabei als Objekt ein „Buch“, das alte oder fremde Wörter erläutert.', komplett zu formatieren. Das CSS entspricht demjenigen, wie es auf dieser Seite zur Anwendung kommt. Alle 'GlossarEin Glossar ist eine Liste von Wörtern mit beigefügten Erklärungen oder Übersetzungen. Ist es eigenständig spricht man auch von Wörterbuch, als Anhang eines Werkes von Wörterverzeichnis. Das lateinische Wort glossarium bezeichnet dabei als Objekt ein „Buch“, das alte oder fremde Wörter erläutert.',-Ausgaben haben eigene eindeutige Klassen für eine vollumfängliche, eigene Formatierung.

/* Überschrift der Funktionen */
.glossartitel{
font-size: 1.5em;
margin-bottom: 50px;
}
/* Beschriftung Formularfelder */
.glossarfieldname{
font-size: 0.9em;
margin-bottom: 1px;
}
/* Anzahl der Einträge */
.glossarnumrows{
font-style: italic;
font-size: 0.8em;
}
.glossarnumrows:before {
  display: inline-block;
  font-family: FontAwesome;
font-size: 1.2em;
  content: '\f002';
  padding-right: 0.8rem;
}
.glossarterm{
font-size: 1.1em;
font-weight: bold;
}
.glossardescription{
margin: -20px 20px 20px 50px;
}
/* Link im Fliestext */
.glossartextlink{ /* noch unbenutzt*/
color: red;
}
/* Formfeld: 'BegriffBeschreibung', */
.glossarfield{
width: 300px;
}
/* Formfeld: Beschreibung */
.glossararea{
width: 550px;
height: 100px;
padding: 5px 5px 5px 15px;
}
/* Formbutton */
.glossarbutton{
    float: left;
 border-width: 1px;
    border-color: #698431;
    background: #7aa228;
    padding: 0.3em 0.8em 0.3em 0.8em;
 cursor: pointer;
    color: #ffffff;
    border-radius: 0.5em;
    outline: none;
    border-bottom: 5px solid #698431;
}
a.glossarbutton {
   color: #ffffff;
   text-decoration:none;
a.glossarbutton:hover {
   color: #e0faac;
text-decoration:none;
}
/* Abstand zwischen den Buttons */
.glossarspacer{
float: left;
  margin: 0px 10px 0px 0px;
}
/* Bestätigung OK*/
.glossarinfo-true{
color: #0B610B;
}
.glossarinfo-true:before {
  display: inline-block;
  font-family: FontAwesome;
font-size: 1.3em;
  content: '\f058';
  padding-right: 0.8rem;
}
/* Bestätigung ERROR */
.glossarinfo-false{
color: #B40404;
}
.glossarinfo-false:before {
  display: inline-block;
  font-family: FontAwesome;
font-size: 1.3em;
  content: '\f057';
  padding-right: 0.8rem;
}

 

Mit einer 5. Funktion kann nun das 'GlossarEin Glossar ist eine Liste von Wörtern mit beigefügten Erklärungen oder Übersetzungen. Ist es eigenständig spricht man auch von Wörterbuch, als Anhang eines Werkes von Wörterverzeichnis. Das lateinische Wort glossarium bezeichnet dabei als Objekt ein „Buch“, das alte oder fremde Wörter erläutert.', auch in den Content und Excerpt integriert werden.

Seite erstellt: am 13.01.2019,   Autor: René A. Da Rin



Schreibe eine Antwort

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

 

Durch die weitere Nutzung der Seite stimmen Sie der Verwendung von Cookies und der Datenübermittlung zu Dritten zu. [ weitere Informationen ]

Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen" eingestellt, um das beste Surferlebnis zu ermöglichen. Wenn du diese Website ohne Änderung der Cookie-Einstellungen verwendest oder auf "Akzeptieren" klickst, erklärst du sich damit einverstanden.

Diese Webseite verwendet weiter 'Akismet' und 'Jetpress' für die Einbindung von Social Media und der Abwehr von Spam. Welche Daten dabei an externe Server übermittelt wird ist durch den Seitenbetreiber nicht zu beeinflussen. Diese Daten sind jedoch für ein vollumfängliches funktionieren der Seite unerlässlich. Sollten Sie damit nicht einverstanden sein, dürfen Sie diese Webseite nicht weiter nutzen. Ausserdem sollten Sie sich darüber Gedanken machen, ob Sie das Internet überhaupt nutzen wollen. Das liest sich für Sie jetzt bestimmt etwas eigenartig, ist aber nun einfach mal so. Ein Datenschutzkonvormes Internet so wie es sich unsere Politiker vorstellen ist zum jetzigen Zeitpunkt nun einfach mal nicht möglich.

Bei den übermittelten Daten handelt es sich nicht um Ihren Namen, jedoch aber um Ihre IP-Adresse. Ändern Sie Diese nicht regelmässig, kann auf Grund dieser Daten ein Surfprofil der entsprechenden Adresse erstellt werden. Auch ist es langfristig dadurch möglich, der IP Ihre eMail-Adresse zuzuordnen und irgendwann auch Ihren Namen zu kennen. Auch ist Ihr Provider verpflichtet darüber Protokoll zu führen und langfristig zu speichern, wann Sie mit welcher IP unterwegs sind.

Der grösste Datensammler ist übrigens Google. Fragen Sie doch da mal nach, welche Daten über Sie gespeichert werden. Gem. der Datenschutzverordnung müssten Sie eigentlich darüber Auskunft erhalten.

Diese Webseite speichert lokal keine IP-Adressen der Besucher und hat auch keine Kenntniss über die wahre Identität seiner Besucher.

Schließen