Lieber Gast …

… die Inhalte von PSD-Tutorials.de stehen nur registrierten Mitgliedern zur Verfügung. Damit wollen wir den Communitygedanken weiterführen. Als Mitglied trägst du - wenn auch nur im Kleinen - zum Puls der Community bei. Und nur so ist es möglich, weiterhin hochwertige Inhalte für alle bereitzustellen.

Jetzt kostenlos registrieren!

Vorteile der kostenlosen Mitgliedschaft

Mit der kostenlosen und schnell erledigten Registrierung erhältst du viele nachhaltige Vorteile, die wir dir hier in aller Kürze aufzeigen möchten:

  • PSD steht für professionelles Know-how in den Bereichen Bildbearbeitung mit Photoshop, Fotografie, Webentwicklung, Layout- und Vektorbearbeitung, 3D-Bearbeitung mit Cinema 4D und Co.
  • Über 3.000 Tutorials mit druckbarer PDF-Datei und teilweise den zugehörigen Arbeitsmaterialien
  • Mehr als 1.900 Video-Trainings als Stream zur Direktanzeige und zum Download
  • Abruf von über 2.200 Downloads zu Photoshop-Presets, 3D-Modellen, Grußkarten, Texturen & Co
  • Zugriff auf ein sehr aktives Forum mit Antworten im Minutentakt
  • Deine Daten sind sicher. Sie werden nicht weitergegeben! Die Mitgliedschaft kann jederzeit und ohne Aufwand wieder gelöscht werden.
  • Registriere dich bei uns und du erhältst die Selection-DVD mit über 24 Stunden Video-Trainings zu Photoshop, InDesign uvm. als Download gratis (sofern Newsletter aktiviert). 

Reinschnuppern als Gast

Niemand kauft gerne die Katze im Sack, auch wenn sie kostenlos ist. Wir haben eine Handvoll Tutorials und Video-Trainings ausgesucht, die du auch als Gast ohne Registrierung ansehen kannst. Gefallen sie dir, stehen dir nach der Registrierung alle oben genannten Inhalte zur Verfügung.

Jetzt kostenlos registrieren!

Passend zum Inhalt empfehlen wir:

PHP-Workshop-DVD - Basics & Tricks

  • 12 Stunden Video-Training, 480 PDF-Seiten Tutorials
  • Basics, Formulare, Datenbanken, XML und Co.
  • 4 Stunden Bonusmaterial zum Webdesign (mit Photoshop
Jetzt informieren

Kommentare


Achtung: Du kannst den Inhalt erst nach dem Login kommentieren.

Anleitung (Bilder + Extras werden nur für Mitglieder eingeblendet)


Um die folgenden Beispiele nachvollziehen zu können, solltet ihr eine Datenbank anlegen, in der eine Tabelle mit einigen Beispieldatensätzen liegt. Ruft dazu bei gestartetem lokalem Server http://localhost/phpmyadmin/ auf und öffnet die im vorherigen Tutorial angelegte psd-Datenbank. Klickt diese dazu im linken Fensterbereich an.

Bilder


 
Tragt nun in das Feld Name den Tabellennamen ein. Im aktuellen Fall wird tutorials gewählt. Bei Anzahl der Felder tragt ihr 3 ein und bestätigt das mit OK.

Bilder


 
In dem sich daraufhin öffnenden Fenster werden die Tabellenfelder definiert. Dort könnt ihr die folgenden Einstellungen vornehmen und diese mit Speichern übernehmen. (Achtet hier vor allem auf den gesetzten Haken der der id-Spalte, durch das ein Autoinkrement-Feld definiert wird. Diese Felder werden automatisch mit eindeutigen Zahlenwerten gefüllt).

Bilder


Die SQL-Syntax sieht folgendermaßen aus:

CREATE TABLE  `psd`.`tutorials` (
 `id` INT NOT NULL AUTO_INCREMENT ,
 `thema` TEXT NOT NULL ,
 `beschreibung` TEXT NOT NULL ,
 PRIMARY KEY (  `id` )
 ) ENGINE = MYISAM ;

 
Jetzt solltet ihr einige Beispieldatensätze anlegen, um diese später auslesen zu können. Öffnet dazu die Tabelle tutorials und klickt im oberen Fensterbereich auf Einfügen. Tragt nun z. B. in das Feld thema den Namen Joomla! ein. In das Feld beschreibung kann Hier dreht sich alles um Joomla! geschrieben werden. In den zweiten Feldblock kann dann z. B. PHP bei thema und Die neuesten PHP-Tutorials. bei beschreibung angegeben werden. Die id-Felder bleiben leer, da diese als Autoinkrement-Felder markiert wurden und somit automatisch mit Werten gefüllt werden.

Bilder


Mit OK werden die Einstellungen übernommen. Die entsprechende SQL-Syntax sieht folgendermaßen aus:

INSERT INTO  `psd`.`tutorials` (
 `id` ,
 `thema` ,
 `beschreibung`
 )
 VALUES (
 NULL ,  'Joomla!',  'Hier dreht sich alles um Joomla!'
 ), (
 NULL ,  'PHP',  'Die neuesten PHP-Tutorials.'
);

 
Um euch einen Überblick über die bisherige Datenbank zu verschaffen, klickt ihr im linken Fensterbereich unter psd auf tutorials und anschließend im oberen Fensterbereich auf Anzeigen.

Bilder


Hier sind die eingefügten Datensätze zu sehen. Auf diese Datensätze soll nun zugegriffen werden.

Legt euch dafür die Datei include.php an, in der die allgemeinen Zugangsdaten für die Datenbank definiert werden.

<?php
 $server = "localhost";
 $user = "root";
 $passwort = "";
 $datenbank = "psd";
 $verbindung = mysql_connect($server, $user, $passwort) 
or die ("Es konnte keine Verbindung zum Server hergestellt werden");
 mysql_select_db($datenbank) or die ("Die Datenbank existiert nicht");
?>

 
Weiter geht es mit der Definition der Zugriffsdatei. Im folgenden Beispiel wird auf die Datenbank psd zugegriffen. Der Einfachheit halber wird im Moment angenommen, dass sich hierin lediglich die Tabelle tutorials befindet. In dieser Tabelle sind verschiedene Themen aufgelistet. Alle diese Themen sollen im Browser angezeigt werden.

<?php
     include ('include.php');
     $abfrage = "SELECT * FROM tutorials";
     $ergebnis = mysql_query($abfrage);
     while($row = mysql_fetch_object($ergebnis))
     {
       echo $row ->thema;
     }
?>

Über den include()-Befehl wird die bereits bekannte Datei include.php eingebunden. Innerhalb der Variablen $abfrage wird festgelegt, welche Tabelle, in diesem Fall also tutorials, angesprochen werden soll.

Zur Notation: Aus Gründen der besseren Lesbarkeit wird hier auf die Syntax SELECT * FROM zurückgegriffen. In der Praxis sollte diese zugegebenermaßen zeitsparende Syntaxform allerdings vermieden werden. Denn hierdurch werden alle Spalten einer Tabelle angesprochen, auch wenn nicht alle benötigt werden. Die korrekte Syntax für unser Beispiel könnte dann z. B. folgendermaßen aussehen:

$abfrage = "SELECT id, thema FROM tutorials"

 
Es wird angenommen, dass die Tabelle tutorials aus den drei Spalten id, thema und beschreibung besteht. Über SELECT * FROM würden wir die Datensätze aller drei Spalten auslesen. Über die Syntax SELECT id, thema werden nur die tatsächlich benötigten Daten ausgelesen. Ihr solltet die Spaltennamen immer auf diese Weise angeben.

Bilder


Zwar werden alle Datensätze ausgelesen, die Darstellung lässt aber noch zu wünschen übrig. Wie eine gezielte Formatierung der Themenliste erreicht werden kann, zeigt das folgende Beispiel.

<?php
include ('include.php');
$abfrage = "SELECT * FROM tutorials";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
echo "<b>";
echo $row ->thema;
echo "</b><br />";
}
?>

 
Die grundlegende Syntax ist mit der vorhergehenden identisch. Zusätzlich wurden hier allerdings einige HTML-Elemente integriert. Auf die gleiche Weise könnten auch select-Auswahlfelder oder Hyperlinks realisiert werden. Um dies zu erreichen, müsst ihr lediglich die entsprechenden HTML-Elemente verwenden. Welche Auswirkungen die aufgeführte Syntax hat, zeigt die folgende Abbildung:

Bilder


Trotz des relativ geringen Aufwands wird die Themenliste jetzt in geordneter Weise angezeigt. Dieses einfache Beispiel verdeutlicht das enorme Potenzial von PHP und MySQL. Denn stellt euch vor, dass ihr die Themenliste mit herkömmlichem HTML erstellen und anschließend wieder verändern müsstet. Der Aufwand währe weitaus größer als in PHP. Schließlich müsst ihr hier die Änderungen lediglich innerhalb der while-Schleife einmal vornehmen. (Wobei dann natürlich auch davon ausgegangen wird, dass es mehr als zwei Themen gibt, die ausgelesen werden).


 

Die Abfragen verfeinern

Die bisherigen Beispiele hatten eines gemein: Die Themenliste wurde vollständig ausgegeben. Diese Darstellung wird allerdings in der Praxis häufig nicht benötigt. Vielmehr kommt es dort darauf an, dass Datensätze ganz gezielt ausgewählt werden können. In diesem Abschnitt werden einige der am häufigsten eingesetzten Varianten zur gezielten Selektion von Datensätzen vorgestellt.

Angenommen, die tutorials-Tabelle wird um das Feld anzahl erweitert, in dem die Anzahl der Tutorials hinterlegt wird, die zu jedem Themenkomplex vorhanden sind.

Es ist beispielsweise möglich, dass aus der Themenliste nur die Tutorials angezeigt werden sollen, deren Anzahl größer oder gleich 10 ist.

SELECT thema, anzahl FROM tutorials WHERE anzahl >= 10

Der WHERE-Befehl dient als Bedingung und ist vergleichbar mit einer if-Abfrage. Hinter WHERE wird die Bedingung notiert. In dem Beispiel lautet diese >= 10.

Die Sortierung von Datensätzen erfolgt bei Zeichenketten alfabetisch und bei Zahlen numerisch. Wenn ihr die Themenliste in umgekehrter Reihenfolge ausgeben wollt, müsst ihr folgende Syntax verwenden:

SELECT * FROM tutorials ORDER BY thema DESC

Über ORDER BY wird nach dem angegebenen Feld sortiert. Wird hinter dem Feld, in diesem Beispiel thema, DESC angegeben, erfolgt die Sortierung aufsteigend. Wird auf diesen Parameter verzichtet, folgt die Sortierung dem üblichen Verhalten. Auf die gleiche Weise könnt ihr jetzt auch ganz einfach die Themen nach der Anzahl etc. sortieren lassen.

Oftmals will man nur eine bestimmte Anzahl von Einträgen anzeigen. Dazu wird der LIMIT-Parameter verwendet. Zusätzlich kann durch diesen festgelegt werden, ab welchem Datensatz die Anzeige erfolgen soll.

SELECT thema FROM tutorials LIMIT 5,10

In dem Beispiel werden insgesamt 10 Datensätze angezeigt. Wobei der erste ausgegebene Datensatz der 5. der Datenbank ist. Der erste Parameter des LIMIT-Befehls legt demnach also den ersten anzuzeigenden Datensatz fest. Der zweite Parameter bestimmt die Anzahl der auszugebenden Datensätze. Wird auf den ersten Parameter verzichtet, wird zwar ebenfalls die definierte Anzahl an Datensätzen, jedoch vom ersten Datensatz an, angezeigt.
vBulletin 0.045 ZF-App 0.292 Total 0.337