PHP Kurs Logo  
 
Buttons PHP Kurs - Kapitel Trennlinie Was brauche ich ? Trennlinie Kontakt Trennlinie Impressum & Datenschutz Buttons
 
 
Menu
Allererste PHP Schritte
- Webserver Installation
- PHP Editor Installation

PHP Grundlagen
- PHP Grundwissen
- Mein erstes Programm
- Kommentare einfügen
- Variablen
- PHP+HTML mischen
- If Abfragen
- Rechenarten
- Arrays
- Schleifen
- Funktionen
- Klassen
- Includes
- Sessions und Cookies
- Login mit Sessions
- Login mit Datenbank
- Referer auslesen
- Wert aus Datenbank
- Variablen übergeben

MySQL Grundlagen
- Was ist das ?
- Erste Schritte
- Verbindung herstellen
- Einfache SQL Befehle
- SQL Injection

Häufig gefragt
- Was ist Adwords ?
- Interessante Links
- Wasserzeichen mod_rewrite
- Thumbnails erstellen
- PHP Gästebuch
- PHP Header
- Webseiten auslesen
- Socket Verbindungen
- E-Mail Adressen prüfen
- E-Mails versenden
- $_GET & $_POST
- Datenbank sichern
- Server DDOS Angriffe Abwehren
- Webhosting - Worauf ist zu achten ?

Interessante Artikel


Arrays - was ist das ?

Wir haben jetzt ja schon Variablen kennengelernt, in denen man irgendwelche Zahlen oder Wörter speichern kann. Arrays sind im Prinzip genau das selbe, nur viel ausgeklügelter. Stellen wir uns eine Variable wie einen Schrank vor. Wir wollen etwas speichern und tun zum Beispiel Socken in die erste Schublade von diesem Schrank hinein. Wir wissen jetzt in dem Schrank sind Socken gelagert (gespeichert).

Jetzt wäre der Schrank mit den Socken in Schublade 1 wie eine Variable.

Was passiert aber wenn wir in die zweite Schublade von diesem Schrank noch Hemden, in die dritte Schublade Krawatten und in die vierte Schubladen Hosen tun ? Jetzt wäre dieser Schrank ein Array.

Ein Beispiel:

<?php
    $schrank
[1] = "Socken";
    
$schrank[2] = "Hemden";
    
$schrank[3] = "Krawatten";
    
$schrank[4] = "Hosen";

    echo 
"In Schublade 3 liegen $schrank[3] <br>";
    echo 
"In Schublade 1 liegen $schrank[1] <br>";
?>

Ausgabe:In Schublade 3 liegen Krawatten
In Schublade 1 liegen Socken

Ein einfaches echo $schrank; wird kein Ergebnis bringen. Wenn man sich den gesamten Inhalt vom Schrank zwischendurch mal angucken möchte, dann kann man zum Beispiel den Befehl print_r($schrank); nehmen.

<?php
    print_r
($schrank);
?>

Ausgabe:(
    [1] => Socken
    [2] => Hemden
    [3] => Krawatten
    [4] => Hosen
)

Jetzt sehen wir die Werte die wir ganz oben dem Schrank zugewiesen haben. Es gibt auch verschiedene Schreibweisen ein solches Array zu bilden. Das oben ist die einfachste Methode. Wir hätten auch eine andere Nummer als zum Beispiel 4 = Hosen nehmen können. Die Nummerierung bleibt uns überlassen, wir dürfen nur nicht zwei Werte in der selben Nummer speichern.

Beispiele wie man Arrays bilden kann:

<?php
    $schrank
[] = "Hosen";
    
$schrank[] = "Krawatten";
    
$schrank[] = "Hemden";

    
$schuhschrank = ARRAY("Slipper""Ballerinas""Schlittschuhe");

    
$warenkorb = ARRAY(1=>"Käse"2=>"Joghurt"49=>"Wurst");
?>

Bei der ersten Methode vom $schrank[] haben wir extra keine Nummer mit angegeben. Wenn wir einfach nur eckige Klammern setzen und keine Nummer angeben, wählt PHP automatisch die nächste freie Nummer.

Beim $schuhschrank haben wir PHP mit ARRAY gesagt, dass wir ein Array bilden wollen und haben dann durch Komma getrennt einfach gesagt, welche Werte in diesem Array gespeichert werden sollen. Auch hier haben wir keine Nummer angegeben, so dass PHP automatisch die Nummern vergibt.

Im $warenkorb haben wir einige Leckereien. Hier haben wir wieder Nummern vergeben. Hier könnte man zum Beispiel die Artikelnummer oder andere sinnvolle Nummern nehmen.

Der Sinn von diesen Arrays kann in folgendem Beispiel nochmal näher verdeutlicht werden. Zu Anfang werden normale Variablen reichen, aber schnell stößt man an die Grenzen des machbaren:

<?php
    $einkaufswagen
[] = ARRAY("Mortadella"=> ARRAY("art"=>"Wurst",
                             
"anzahl"=>5"preis"=>1.00));
    
$einkaufswagen[] = ARRAY("Kaese"=> ARRAY("art"=>"Milchprodukt",
                             
"anzahl"=>1"preis"=>1.99));
    
$einkaufswagen[] = ARRAY("Snickers"=> ARRAY("art"=>"Suesswaren",
                             
"anzahl"=>2"preis"=>2.45));

    
print_r($einkaufswagen);
?>

Wie Du siehst kann man mit Arrays wunderbar Warenkörbe für Online-Shops realisieren. Würde man nur eine Variable verwenden, könnte man ja nur einen gekauften Gegenstand speichern. Würde der Kunde mehrere Artikel in den Warenkorb legen, dann würde dies mit einer einfachen Variable nicht funktionieren. In ein Array kann man neue Artikel "reinlegen", aber auch wieder rauslöschen.

Stellt euch vor Ihr wollt Schiffe versenken programmieren !

Ihr habt ein großes Raster, auf welchem Ihr zu jedem Feld in eurem Programm notieren müsst, ob sich dort etwas befindet oder nicht. Wie will man dies mit einer Variable machen ? Hierfür braucht man ein Array - und zwar ein mehrdimensionales.

<?php
    $feld
[3][7] = 1;
    
$feld[4][8] = 1;
    
$feld[2][9] = 1;

    if (
$feld[3][7] == 1)
        {
        echo 
"Feld ist besetzt !";
        }
?>

Hier könnte man jetzt zu jedem Feld notieren was sich dort befindet. 0 wäre zum Beispiel = Feld ist frei und 1 = Feld ist besetzt mit Spieler 1 und 2 = Feld ist besetzt mit Spieler 2

Die erste Zahl in den eckigen Klammern könnte man für die Nummerierung der horizontalen Kästchen nehmen und die zweite Zahl in Klammern könnte man für die Vertikale Achse nehmen. So kann man für jedes Kästchen einen Zustand speichern und beschreiben, ohne sich 15x14 = 210 Variablen überlegen zu müssen (für jedes Kästchen eines). Ganz abgefahren wird es, wenn Ihr jetzt noch weitere Dimensionen hinzufügt - weil zum Beispiel das Schiffe versenken ein U-Boot versenken ist und unter Wasser ja alles 3 Dimensional ist. Euren Möglichkeiten sind da kaum Grenzen gesetzt.


Ihr solltet euch erstmal an einfachen Arrays versuchen, die mehrdimensionalen seien hier erwähnt aber für erste Gehversuche nicht so interessant.

Arrays die vom Server geliefert werden

Es gibt auch Arrays die müsst Ihr gar nicht erst mit Daten füllen. Es gibt Arrays die sind schon vorhanden wenn Ihr euer Programm startet, so z.B. $_SERVER. In $_POST sind immer die Daten von Formularen enthalten die man mit HTML erstellen kann, sofern man diese mit method="post" sendet. Das senden mit method="post" hat den Vorteil gegenüber method="get", dass die gesendeten Parameter nicht alle in der Internetadresse übergeben werden, sondern dass Ihr die Übergabe nicht seht. Ausserdem ist die Länge der Internetadresse begrenzt, während Ihr über $_POST auch wesentlich größere Datenmengen schicken könnt. Wie man Formulare erstellt könnt Ihr hier (klick) nachlesen. In dem Array $_GET werden alle Parameter gespeichert, die in der Internetadresse mit übergeben werden.

Zum Beispiel: test.php?farbe=gruen&gegenstand=Auto

Dann habt Ihr in $_GET["farbe"] den Wert "gruen" und in $_GET["gegenstand"] das Wort "Auto" gespeichert.

Achtung: viele programmieren mit der Einstellung am Apachen "Globals = an". Dies bewirkt, dass man die Parameter aus $_POST und aus $_GET nicht aus diesem Array abfragen muss. In diesem Fall mit der Internetadresse und den $_GET Parametern wäre auch noch die Variable $farbe mit "gruen" und die Variable $gegenstand mit "Auto" belegt.

Bitte nicht angewöhnen die Variablen direkt zu verwenden ! Immer über $_POST und das $_GET Array abfragen !

Es ist unsauber programmiert, birgt Sicherheitsrisiken und auf dem nächsten Server läuft euer Skript dann warscheinlich sowieso nicht mehr, weil die Globals = aus sind. Man sollte wenn man Informationen von aussen bekommt diesen auch nie vertrauen. Sicherheitsabfragen sollte man sich angewöhnen und somit mit Manipulationen von aussen rechnen !


Hier zum Beispiel das $_SERVER array als print_r($_SERVER) Ausgabe:



Dies ist ein Teilausschnitt, aber man kann dem schon viele Daten entnehmen. Unteranderem sieht man hier welche IP Adresse der Surfer hat ( $_SERVER["REMOTE_ADDR"]; ), welchen Internetbrowser und Betriebssystem er nutzt ( $_SERVER["HTTP_USER_AGENT"];) und noch vieles mehr wie Ihr seht.





<<<< zurück Kapitelauswahl vorwärts >>>>






Content
 
  Bottom Design  

PepperTools.de Software Download | Software Shop
PepperTools Software Shop