MTS - Meine Tutorial Sammlung

M3Y3R

Well-known member
ID: 336361
L
8 Mai 2006
1.608
60
MTS.png

Im Bereich Informatik und Programmierung gibt es viel zu entdecken. Komplexere Themen wie zum Beispiel Normalisierung einer Datenbank oder Subnetting sind für Neulinge nicht immer leicht verständlich.

Eine der ersten Anlaufstellen ist daher meistens Wikipedia, doch wer garantiert mir, dass die Informationen hier auch wirklich richtig sind? Aus diesem Grund entschließen sich die meisten Schulen, Wikipedia als Quelle für Dokumentationen und Präsentationen nicht mehr zuzulassen.

Vergebens sucht man nun nach einer Vertrauenswürdigen Quelle und nach einiger Zeit postet man sein Anliegen in einem Forum. Nach kurzer Zeit muss man dann feststellen, dass die Fragen vielleicht etwas abgewandelt im Forum bereits gestellt wurden und so hagelt es Kommentar über Kommentar und nicht immer bleiben einige User dabei Sachlich. Es erscheinen Posts wie „Ich hätte das innerhalb von 10 Sekunden über Google gefunden“ oder „Zu Faul zum Suchen…“.

Gerade für Anfänger ist es nicht immer leicht, die besten Suchbegriffe zu entschlüsseln und in einer Suchmaschine einzugeben. Daher habe ich diesen Thread ins Leben gerufen. Hier möchte ich nach und Nach einige Themen Beschreiben, Auflisten und Diskutieren. Für Fragen im Informatikbereich soll dieser Thread als erste Anlaufstelle dienen um so neue Threads mit ähnlichen Fragen zu vermeiden…

Erklärungen:
Zeichen | Bedeutung
check.png
| Hinzugefügt

edit.png
| In Bearbeitung

Update-Informationen:

Datum | Titel | Status
01.12.2009 | Normalisierung einer Datenbank |
check.png

06.12.2009 | PHP Einführung - Teil 1 |
check.png

Inhaltsverzeichnis

A

B

C

D

E

F

G

H

I

J

K

L

M

N
:arrow: Normalisierung

O

P
:arrow: PHP Einführung - Teil 1

Q

R

S

T

U

V

W

X

Y

Z
 
Zuletzt bearbeitet:
Danke fuer die kleine Erklaerung, ich denke die 3te Normalform ist die letzte wirklich sinnvolle, alle weiteren sind ins unendliche getrieben :D

Was man dabei bemerken sollte ist natuerlich dass Normalisierung lediglich redundanzen reduziert, nicht jedoch die Abfrage Zeit reduziert.
Redundanzen eliminieren ist eine schoene Sache aber teilweise nicht wuenschenswert wie z.B. eine Cache tabelle.
 
Normalisierung einer Datenbank

Warum machen wir die Normalisierung
Nun ja, durch wiederkehrende Datensätze entstehen in unserer Datenbank Redundanzen.
Dadurch verschwenden wir unseren verfügbaren Speicher. Weiterhin entstehen Inkonsistenzen (Widersprüche) in der Datenbank.

Was ist die Normalisierung
Die Normalisierung ist ein mehrstufiger Prozess, bei dem die Relationen der Datenbank solange zerlegt werden, bis alle Redundanzen beseitig sind.

Ausgangssituation (Unnormalisierte Tabelle)

PNR|Name|AbtNr|AbtName|ProNr|ProBez|Zeit
1|Meier|1|A1|2|P2|83
2|Hohe|2|A2|3|P3|29
3|Adams|1|A1|1,2,3|P1,P2,P3|140,92,110


1. Normalform
In der ersten Normalform darf in jedem Datenfeld der Datenbank nur eine Information stehen. Dadurch ergibt sich folgende Tabelle

PNR|Name|AbtNr|AbtName|ProNr|ProBez|Zeit
1|Meier|1|A1|2|P2|83
2|Hohe|2|A2|3|P3|29
3|Adams|1|A1|1|P1|140
3|Adams|1|A1|2|P2|92
3|Adams|1|A1|3|P3|110

Man bezeichnet diese Tabelle nun als Atomar. Sie beinhaltet aber noch viele Redundanzen, da ein mitarbeiter noch öfters in der Datenbank auftaucht.


2. Normalform
Eine Relation ist in der 2. Normalform wenn sie in der 1. Normalform vorliegt und jedes Nicht-Schlüsselattribut jeweils vom ganzen Primärschlüssel und nicht nur von Teilen davon abhängig ist.

Wir müssen also unsere Primärschlüssel identifizieren.

Von der PNR lässt sich unmittelbar auf Name, AbtNr und AbtName schließen.
Von ProNR lässt sich auf unmittelbar auf ProBez schließen.
Erst durch eine Kombination von beiden erlaubt uns die Zuordnung der Zeit.

Entsprechend dieser Abhängigkeiten entstehen nun die neuen Taellen:
PNR|Name|AbtNr|AbtName
1|Meier|1|A1
2|Hohe|2|A2
3|Adams|1|A1

ProNR|ProBez
1|P1
2|P2
3|P3

PNR|ProNR|Zeit
1|2|83
2|3|29
3|1|140
3|2|92
3|3|110

HINWEIS:
Die 2. Normalform dient zur Identifizierung und Ausgliederung der n:m-Beziehungen !


3. Normalform
Eine Relation ist in der 3. Normalform, wenn die 2. Normalform vorliegt und alle Nicht-Schlüsselattribute voneinander unabhängig sind.
Im Beispiel hängt das Attribut AbtName direkt vom Nicht-Schlüsselattribut AbtNr ab.
Man spricht von einer transitiven Abhängigkeit.

Transitiv:
3 Zahlen und es gilt:
a < b und b < c entspricht a < c

Es erfolgt wiederum eine Ausgliederung in eine Extra-Tabelle

PNR|Name|AbtNr
1|Meier|1
2|Hohe|2
3|Adams|1

AbtNr|AbtName
1|A1
2|A2

ProNR|ProBez
1|P1
2|P2
3|P3

PNR|ProNR|Zeit
1|2|83
2|3|29
3|1|140
3|2|92
3|3|110


Das war es eigentlich schon mit der Normalisierung und so schwer ist es auch garnicht ;-)
Vielleicht nur etwas kompliziert, aber wenn man das erst einmal verstanden hat, dann ist es einfach.

Ich hoffe ich konnte euch ein wenig helfen!


Mit freundlichen Grüße
Papenburger
 
PHP-Einführung - Teil 1

Immer und immer wieder tauche hier Fragen zu PHP auf...
Wie kann man dies machen und wie kann man jenes machen ? Um hier den absoluten Neulingen den Einstieg etwas zu erleichtern, möchte ich euch nun eine kleine Einführung geben.

Was ist PHP eigentlich
PHP selbst in eine Scriptsprache. Mit Hilfe von PHP ist es möglich, Formulardaten einer Internetseite auszuwerten und für die anschließende Verarbeitung weiter zu verwenden.

Was brauche ich um PHP zu erstellen und mir die Daten ausgeben zu lassen
Nunja, um eine PHP-Datei ausführen zu können, benötigst du auf jeden Fall Apache. Dies ist ein Programm, welches einen Server simuliert und den PHP-Code ausführbar macht. Da das einrichten eines Apache-Servers selbst ziemlich schwierig sein kann, gibt es ein Programm, welches dies für dich übernimmt und von den meisten Leuten verwendet wird. Dies Programm nennt sich XAMPP und kann man sich hier downloaden. Nach der Installation ist dein Apache-Server betriebsbereit und es kann los gehen.

Wie erstelle ich eine PHP-Datei
Um eine PHP-Datei zu erstellen, reicht der ganz normale Text-Editor von Windows. Am Anfang einer Datei steht natürlich der öffnende Tag eines PHP-Codes. Dieser muss am Ende der Datei auch wieder geschlossen werden...
PHP:
<?php
//PHP-Code
?>

Damit wäre unsere Datei schon einmal fertig...

Das ganze speicherst du unter einem beliebigen Dateinamen mit der Endung .php in das unter XAMPP befindliche htdocs-Verzeichnis ab. Über deinen Browser kannst du diese Datei nun mit https://localhost/DEINEDATEI.php aufrufen. Allerdings wird hier noch nichts angezeigt.

Wie erstelle ich nun ein PHP-Script
Nunja, in PHP gibt es viele Möglichkeiten Daten zu verarbeiten. PHP selbst, bietet hierfür schon einige Funktionen an. Nachlesen kann man diese auf www.php.net.
PHP bietet auch die Möglichkeit, Daten in sogenannten Variablen zu speichern. Im Gegensatz zu den meisten anderen Sprachen muss man hier keine Angaben machen, welchen Inhalt die Variable bestitzt. Also ob diese eine Zahl oder einen String enthällt.
Variablen wie folgt erstellt:
PHP:
$variablenname = 'WERT';

Meine nun erstellte Variable trägt den Namen "Variablenname" und hat den Wert "Wert".
Über ein echo oder print kann ich sie wieder ausgeben.
PHP:
<?php
$variablenname = 'WERT';
echo $variablenname;
?>

Ihr dürft nicht vergessen, hinter jeder Zeile ein Symikolon zu setzen. Andernfalls erhaltet ihr eine Fehlermeldung.


Kann ich auch mit PHP rechnen
Ja das kann man. Im folgenden Script werden die vier Grundrechenarten gezeigt.
PHP:
<?php
$zahl_a = 3;
$zahl_b = 5;

//Addieren der beiden Zahlen
$addition = $zahl_a + $zahl_b;
echo $addition; //Ergebnis: 8

//Subtrahieren der beiden Zahlen
$subtraktion = $zahl_a - $zahl_b;
echo $subtraktion; //Ergebnis: -2

//Multiplizieren der beiden Zahlen
$multiplikation = $zahl_a * $zahl_b;
echo $multiplikation; //Ergebnis: 15

//Dividieren der beiden Zahlen
$dividation = $zahl_a / $zahl_b;
echo $dividation; //Ergebnis: 0.6

// Dividieren mit Rest (Modulo)
$modulo = $zahl_b % $zahl_a;
echo $modulo;  // rest 2
?>


Nun wisst ihr schon wie ihr PHP-Dateien erstellt und wie man dort Daten ausgeben und verarbeiten könnt.
Im nächsten Schritt mehr datzu ein weiteres spannendes...

Bis dahin, viel Spaß!
 
Zuletzt bearbeitet:
Ich will ja nix sagen, aber wenn sich ein Thread schon mit "Tutorial" schmückt, sollte da auch nur Richtiges drinstehen :roll:
Nunja, um eine PHP-Datei ausführen zu können, benötigst du auf jeden Fall Apache. Dies ist ein Programm, welches einen Server simuliert und den PHP-Code ausführbar macht.
Apache simuliert keinen Server, Apache ist ein Server.
Auch macht er den PHP-Code nicht ausführbar, da PHP-Code nicht kompiliert wird. Der Apache ruft einfach nur den PHP-Interpreter auf, mehr nicht.
Im Gegensatz zu den meisten anderen Sprachen muss man hier keine Angaben machen, welchen Inhalt die Variable bestitzt. Also ob diese eine Zahl oder einen String enthällt.
Variablen wie folgt erstellt:
PHP:
$variablenname = 'WERT';
Und das is natürlich sehr förderlich, den Lesern den richtigen Umgang mit Variablentypen beizubringen :-?

Auch wenn PHP intern alles umwandelt, wenn es erforderlich ist, so werden Integer-Werte anders zugewiesen als String-Werte.
PHP:
$string = 'string';
$integer = 42;
 
Code:
<?php
$zahl_a = 3;
$zahl_b = 5;

//Addieren der beiden Zahlen
$addition = $zahl_a + $zahl_b;
echo $addition[COLOR="Red"];[/COLOR] //Ergebnis: 8

//Subtrahieren der beiden Zahlen
$subtraktion = $zahl_a - $zahl_b;
echo $subtraktion[COLOR="Red"];[/COLOR] //Ergebnis: -2

//Multiplizieren der beiden Zahlen
$multiplikation = $zahl_a + $zahl_b;
echo $multiplikation[COLOR="Red"];[/COLOR] //Ergebnis: 15

//Dividieren der beiden Zahlen
$dividation = $zahl_a / $zahl_b;
echo $dividation[COLOR="Red"];[/COLOR] //Ergebnis: 0.6

// Dividieren mit Rest (Modulo)
$rest = $zahl_b % $zahl_a;
echo $rest;  // rest 2
?>

Übersicht
 
Zuletzt bearbeitet:
Immer und immer wieder tauche hier Fragen zu PHP auf...
Wie kann man dies machen und wie kann man jenes machen ? Um hier den absoluten Neulingen den Einstieg etwas zu erleichtern, möchte ich euch nun eine kleine Einführung geben.
sollte man nicht lieber auf deutlich tiefergehende Tutorials verweisen? Du hast bei dem Stoff, den du erklärt hast, ja noch nicht mal bei den Teilen an der Oberfläche gekratzt: E_NOTICE, autom. Typecasting, statisch/dynamisch typisierte Sprache, überhaupt eine Erklärung wie die Syntax funktioniert... :!:

PHP selbst in eine Scriptsprache. Mit Hilfe von PHP ist es möglich, Formulardaten einer Internetseite auszuwerten und für die anschließende Verarbeitung weiter zu verwenden.
und genau sowas meine ich dann, PHP kann weit mehr als das, Personen, die davon keine Ahnung haben, werden die Tragweite von PHP dann überhaupt nicht einschätzen können.

PHP:
<?php
echo $variablenname;
?>
würde ich das nun ausführen, würde ich nichts sehen :roll:
für Anfänger sollte man kurze selbstkompilierende Beispiele haben, ohne, dass der Anfänger noch raten muss, dass er den letzten PHP-Code mit diesem zusammensetzen muss, und vor allem wie, denn das hast du auch nicht erklärt.

PHP:
<?php
$zahl_a = 3;
$zahl_b = 5;

//Multiplizieren der beiden Zahlen
$multiplikation = $zahl_a + $zahl_b;
echo $multiplikation //Ergebnis: 15
?>
schon doof, wenn Quellcode den Anfänger ausführen sollen, Fehler enthalten :biggrin:
nach Adam & Eva kommt da 8 raus :p

Nun wisst ihr schon wie ihr PHP-Dateien erstellt und wie man dort Daten ausgeben und verarbeiten könnt.
Im nächsten Schritt bzw. Post erkläre ich euch die Bedeutung von Funktionen und Klassen.
Bis dahin, viel Spaß!
mal langsam !
du hast gerade gezeigt wie man eine einfache Variable deklariert, ausgibt und mathematische Operationen ausführt und willst mit Funktionen und OOP weitermachen? :ugly:
Also da kommen doch bestimmt noch Schleifen, Get/Post-Parameter, Strings und und und und dazwischen, du solltest dich vllt mal eher an einem Buch orientieren.


Alles in allem vllt eine schöne Idee (zumindest die Normalisierung), aber für sowas haben wir einen FAQ-Bereich in dem man so etwas posten könnte, das ist dort besser aufgehoben als in einem Thread von einem User der in 2-3 Monaten irgendwo unten verschwunden ist.


Ps.: Ich will dich nicht fertig machen oder so, aber wenn man Lehrer auf einem Gebiet spielen will, sollte man da schon eine Koryphäe sein und zudem noch die "Gabe" haben verständlich erklären zu können, und vieeeeeel Zeit haben, ein PHP-Tutorial, wenn es ordentlich werden sollte, würde über Monate entstehen, und nicht ein Artikel in 2 Stunden.
 
Apache simuliert keinen Server, Apache ist ein Server.

Ich gehe jetzt mal nur auf Apache ein! Apachi selbst ist kein Server, denn Apachi ist eine Software die einen Server simuliert. Selbst wenn du dir einen Server kaufen solltest und dir den zuschicken lässt, sind sie erstmal ziemlich schwer und enthalten keine Software...
Damit du aber WebSeiten oder ähnlichen Kram darauf installieren bzw. ausführen kannst, brauchst du eine Basis. Ich gehe nun einmal von Suse Linux Enterprise Server 10 aus. Und genau hier ist das was ich meine. Apache wird bei der Installation von Linux als zusätzliche Software angeboten! Man kann sie installieren oder auch nicht...

Daher ist meine Aussage, dass es den Server simuliert nicht wirklich falsch !
Fakt ist, dass ein Server auch ohne Apache funktioniert, aber dann lassen sich die Webinhalte wohl auch nicht mehr anzeigen....
 
Ich gehe jetzt mal nur auf Apache ein! Apachi selbst ist kein Server, denn Apachi ist eine Software die einen Server simuliert.
Absoluter Mist!
Lies doch bitte mal hier nach: https://de.wikipedia.org/wiki/Apache_HTTP_Server

Bzw. sieh einfach auf der Webseite von Apache nach und belese dich. Die wissen wohl am besten, was sie da programmiert haben :ugly:
The Apache HTTP Server Project is an effort to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows NT. The goal of this project is to provide a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards.
Apache has been the most popular web server on the Internet since April 1996.
 
zumal Apache nicht den PHP-Code ausführbar macht, sondern einfach nur den PHP-Prozess mit dem PHP-File startet, ausgeführt wird das Skript immernoch von PHP.
 
Also mal zur Terminologie: Apache ist ein server daemon (software die einen service anbietet) und fuehrt selber nicht PHP aus sondern verbindet den PHP interpreten mit den Anfragen die reinkommen.