Christoph Burghardt

 Start    Bibeltexte    Hobby    Impressum    Sitemap    DMOZ open directory project

 

Darstellung von PHP 5 und MySQL

28.10. 2006 05.09. 2007 29.12. 2007 Ende

Skripte PHP5

Alle Datenbanken anzeigen
Alle Tabellen einer Datenbank anzeigen
Alle Felder einer Tabelle anzeigen
Alle Datensätze einer Tabelle anzeigen
Arrays
Benutzername Passwort
Benutzerverwaltung php
Counter in PHP ohne Datenbank
Dateiupload
Datenbank anlegen
Datenbank löschen
Datensätze erzeugen
Datensätze anzeigen
Datensätze ändern
Datensätze löschen
Datensätze als Array
E-Mail versenden mit php
Excel-Dateien übertragen in MySQL
for-Schleife
Funktionen
Gästebuch erstellen mit php

HTACCESS Zugriffsschutz
Inhalt eines Feldes anzeigen
IP Datum Zeit speichern
Kreisdiagramm erstellen
lang_getfrombrowser()
Login
Login-Funktion php
Mathematik Zahlenfolgen Vollständige Induktion Grenzwerte
Mathematik Differentialrechnung
Mathematik Integralrechnung
MySQL Datenbanken
mysqldump Datenbanksicherung mysql dump
Passwortschutz Benutzerverwaltung
PDF-Dateien erstellen mit PHP
PHP Info
Skripte Umfrage Lehrerbenotung
Sqlite
Sqlite und PHP 5
Tabelle anlegen
Tabelle löschen
Umfrage erstellen mit php
Verbindung zur Datenbank herstellen
Verschlüsselung
while-Schleife
Zeichnen einer Ellipse mit PHP
Zeichnen von Linien mit PHP



PHP ist eine Skriptsprache, die auf dem Server ausgeführt wird.
PHP ist serverlastig.
PHP ist caseinsensitiv, es erfolgt also keine Unterscheidung zwischen Groß-
und Kleinschreibung (außer bei Variablen).
Als Entwicklungsumgebung ist bereits der Apache-Server unter Windows installiert.
Installation von PHP
Es gibt zwei Möglichkeiten PHP zu installieren. Als CGI-Version oder als Modul-
Version. Wird eine PHP-Seite aufgerufen muss der PHP- Interpreter gestartet werden.
Bei der CGI-Version muss für jeden Prozess der PHP-Interpreter geladen werden. In der
Modul-Version ist der Interpreter ständig geladen. Für umfangreich programmierte Seiten sollte
die Modulversion verwendet werden.
1. Systemsteuerung Windows Komponente hinzufügen
2. Aktivieren von IIS (Internetinformationsserver)
3. der IIS startet von selbst
4. neueste PHP-Version herunterladen von http://www.php.net
5. kopieren der Datei php.ini.dist in das Verzeichnis C:\Windows
6. umbenennen der Datei in php.ini
7. die Datei php.ini öffnen und den Eintrag "extension_dir" suchen
8. als Wert "c:\php\ext" eingeben
9. speichern
Testen
folgendes Script
<?
Phpinfo() ;
?>
Diese Datei muss unter php.php abgespeichert werden und in den htdocs-Ordner des Apache-Servers kopiert werden.
Dann in den Browser folgendes eingeben: http://localhost/php.php
Im Browser sollte nun eine Informationsseite über die PHP-Konfiguration angezeigt werden.
Der Interpreter bearbeitet nur Dateien mit für ihn zugewiesenen Endungen .php und einer Anweisung zum Start einer
PHP-Kodierung z.B. <?php (XML-kompatibel) oder <? (Short-Tag)
Ein einfaches PHP-Skript wäre z.B.
<html>
<head>
</head>
<body>
<?php
?>
</body>
</html>
Die PHP-Kodierung befindet sich im Body-Bereich. Um Texte an den Browser zu senden wird die Funktion echo verwendet.
<html>
<head>
</head>
<body>
<?php
echo "Dies ist ein Skript" ;
?>
</body>
</html>
Der String wird in Anführungszeichen angegeben. Das Semikolon kennzeichnet das Ende des Befehls.
HTML-Tags können mit in die Funktion echo eingearbeitet werden (z.B. für Fettschrift ).
<html>
<head>
</head>
<body>
<?php
echo "<b>Dies ist ein Skript</b>" ;
?>
</body>
</html>
Sprachelemente und Syntax
Kommentare
Es besteht die Möglichkeit Text einzubauen der im Browser nicht sichtbar ist.
Beispiele:
<?php
# Kommentar...
// Kommentar...
echo "<b>Dies ist ein Skript</b>" ;
/* Dies ist ein Block-Kommentar, Sie können somit mehrere Zeilen kommentieren, ohne überall ein # oder // zu setzen  */
?>
Sonderzeichen können Probleme ergeben
so ist es falsch:
<?php
echo "<b>Dies ist ein "Skript"</b>" ;
?>

und so ist es richtig:
<?php
echo "<b>Dies ist ein \" Skript \"</b>" ;
?>
ein vorangehender Backslash ist erforderlich

Variablen
Variablen dienen als Platzhalter. Variablen werden mit einem vorangestellten Dollarzeichen markiert. Es wird zwischen Groß- und Kleinschreibung unterschieden. Die Variablen können als Zahl oder Zeichenkette angegeben werden. Die Zeichenkette muss in Anführungszeichen gesetzt werden.

<?php
 $var = 1 ;
?>

Variablen-Typen unter PHP  

String Zeichenkette
Integer Ganzzahl
Double Fließkommazahl
Array bietet mehrere Elemente
Object ein Objekt, Instanz einer Klasse
Boolean Wahrheitswert, True oder False
Null entspricht  keinem Wert

Wann gibt eine Variable False zurück?

wenn die Variable auf False gesetzt ist
Ganzzahl hat den Wert 0
Fließkommazahl hat den Wert 0.0
"0" als Zeichenkette
gar kein Inhalt
Null als Inhalt geschrieben

PHP ordnet der Variable automatisch den Typ zu.

Beispiel:

<?php
$vareins = 1 ;
$varzwei = "zwei" ;

echo $vareins ;
echo $varzwei ;
?>

1zwei wird im Browser angezeigt

Funktionen, die ein True zurückgeben, wenn ein bestimmter Wert vorliegt

is_nummeric() handelt sich um eine Zahl
is_string() liegt ein Sting vor
is_double() wird eine Fließkommazahl genutzt
is_integer() vorhandene Ganzzahl
is_object() genutztes Objekt


Mit der Funktion intval() wird eine Variable (z.B. als Zeichenkette "1a")  in einen Ganzzahl-Wert konvertiert.

<?php
$vareins = "1a" ;
$vareins = intval ($vareins) ;
echo $vareins ;
// Ausgabe : 1
?>

Dies funktioniert nur , wenn die Zahl als erstes steht "1a"

Beispiel:

<?php
$vareins = "a1" ;
$vareins = intval ($vareins) ;
echo $vareins ;
// Ausgabe : 0
?>

Die Lösung dafür sind die Funktionen strval und doubleval.

Bei Variablen als Zahl stehen alle Grundrechenarten zur Verfügung.

<?php
$a = 1 ;
$b = 2 ;

echo $a + $b ;
echo $a - $b ;
echo $a * $b ;
echo $a / $b ;

?>

Durch ein doppeltes Dollarzeichen erfolgt ein besonderer Zugriff auf Variablen.

<?php
$name = "Vorname" ;
$zugriff = "name" ;

echo $$zugriff ;
// Ausgegeben wird "Vorname"

?>

$$zugriff entspricht $name weil $zugriff "name" entspricht

In Bezug auf Zeichenketten herrscht häufig Unsicherheit, wo genau der Unterschied zwischen einfachen und doppelten Anführungszeichen liegt.

So kommt ein
$x="Hallo Welt";
scheinbar auf das Gleiche heraus wie ein
$x='Hallo Welt';

Der Unterschied liegt im Automatismus beider Möglichkeiten. Bei doppelten Anführungszeichen werden Variablen automatisch mit ihrem Wert ersetzt.

<?php
echo '\n' ;  // Es wird /n ausgegeben

?>

<?php
echo "\n" ;  // Es wird ein Umbruch ausgegeben  (neue Zeile)

?>

<?php
$x=3 ;
echo '$x' ; Es wird $x ausgegeben
echo "$x"; Es wird 3 ausgegeben

?>

Konstanten define ()

Konstanten sind Variablen mit feststehenden Werten

<?php
define ("MEINEKONST" , "Hallo Welt") ;
echo MEINEKONST ;

?>

üblich ist es, Konstanten groß zu schreiben
Konstanten sind normalerweise Case-sensitiv
dritter Parameter für define() 1 oder 0

<?php
define ("MEINEKONST", "Hallo Welt",0) ;
echo meinekonst ;
define ("MEINEKONST2", "Hallo Welt",1) ;
echo meinekonst2;

?>

Operatoren und Ausdrücke

Operatoren sind z.B. das Gleichheitszeichen oder das Pluszeichen
mit Operatoren werden Ausdrücke gebildet
ein Ausdruck gibt immer "wahr" oder "falsch" zurück

 

Operator Verwendung Funktion
+ $a+$b =Summe von $a und $b
- $a-$b =Differenz von $a und $b
* $a*$b =Produkt von $a und $b
/ $a/$b =Quotient von $a und $b
% $a%$b =Der Rest von $a dividiert durch $b (modulo)

das Gleichheitszeichen als Zuweisungsoperator
$x=4
doppeltes Pluszeichen bedeutet eine Variable wird um 1 erhöht
Punkt in Zeichenketten bedeutet eine Verknüpfung von Zeichenketten

Beispiel:
<?php
$string = "Hallo";
$string.= "Welt" ;
echo $string; //Hallo Welt

$string2 = "Hallo Du";
$string2.= ",";
echo string2. "Benutzer"; //Hallo Du, Benutzer
?>

Zur Erstellung von Ausdrücken werden Vergleichsoperatoren eingesetzt.

Operator

Verwendung

Funktion

== $a==$b Wahr, wenn $a gleich $b ist. (doppeltes Gleichheitszeichen)
!= $a!=$b Wahr, wenn $a ungleich $b ist.
< $a<$b Wahr, wenn $a kleiner $b ist.
> $a>$b Wahr, wenn $a größer $b ist.
<= $a<=$b Wahr, wenn $a kleiner oder gleich $b ist.
>= $a>=$b Wahr, wenn $a größer oder gleich $b ist.
=== $a===$b Wahr, wenn $a gleich $b ist und der Typ von $a identisch mit dem Typ von $b ist.


Funktionen programmieren

function

<?php
function gruss()
{

echo "Fühle Dich gegrüßt";

}
gruss();

?>

<?php
function summe ($a, $b)

{
$summe=($a+$b);
echo $summe;
}

summe(1000,111);

summe(1,3);

summe(2,4);

// ausgegeben wird 111146

?>


Variablen nur innerhalb der Funktion und auch nur innerhalb von Summe werden verarbeitet.

<?php
function summe ($a,$b)

{
$Summe=   ($a+$b);
echo $Summe;
}

$a = 7;

summe (3,4);

//$a ist 3, nicht 7!

?>

<?php

function ausgabe()

{

global$ausgabe; //ohne global passiert nichts!

echo $ausgabe;

}

$ausgabe="Hallo";

ausgabe();
ausgabe();

?>

Variable als statisch definieren mit Hilfe von static
<?php
function ausgabe()

{

static $zaeler;
$zaeler++;
echo $zaeler;

}

$zaeler=0;
ausgabe(); // es wird 1 angezeigt
ausgabe(); // es wird 12 angezeigt
ausgabe(); //  es wird123 angezeigt
?>


Funktion mit Standardwert (ohne Parameter)
die Zuteilung des Standardwertes erfolgt durch das Gleichheitszeichen

<?php

function ausgabe($text="Kein Text")

{
echo $text;
}

ausgabe();
ausgabe("<br>Ein Text");

?>

Ausgabe des Skriptes:
Kein Text
Ein Text

Funktionen liefern einen Wert zurück, durch return
<?php

function summe($a,$b)

{
$summe=$a+$b;
return $summe;
}


$zahl=summe(10,4);
$zahl++;

echo $zahl;   // Ausgabe 15

?>

Bedingungen und Schleifen

Bedingungsprüfung if-Anweisung

<?php

$zahl=1;

if($zahl==1) echo "Eine Eins!";

?>
Achtung zwei Gleichheitszeichen, ein einzelnes Gleichheitszeichen ist ein Zuweisungsoperator
Bedingungen können durch AND (&&) und OR (||) beliebig verknüpft werden.

<?php

$zahl=1;

if($zahl==1 || $zahl==2) echo "Eine Zahl";

?>

if-Bedingungen erweitern durch else und elseif

<?php

$zahl=1;

if ($zahl==1) echo "Eine Eins";

else echo "Keine Eins";

?>

Weiterprüfungen duch elseif

<?php

$zahl=15;

if($zahl==15) echo "Fünfzehn";
elseif($zahl==16) echo" Sechzehn";
else echo "Nicht 15 oder 16";

?>

Überprüfung von Codeblöcken mittels geschweifter Klammern


<?php

$zahl=33;
if($zahl==33)

{echo "Dreiunddreißig";
echo "<br>";
}

else echo "Eine andere Zahl";
?>

switch

jedem Wert ist eine Aktion zugeordnet
dieses ist übersichtlicher als if-Bedingungen

<?php
$zahl=3;

switch($zahl)

{
case 3: echo "Eine Drei"; break;

}

?>

entspricht $zahl=1000 erfolgt die Ausgabe Eintausend Zweitausend, weil break; hinter case 2000 steht
<?php

$zahl=2000;

switch($zahl)

{
case 1000: echo "Eintausend";
case 2000: echo "Zweitausend";

break;
}

?>

for Schleife

<?php

for ($i=0; $i<11;$i++)

{

echo $i;
echo"<br>";
}


?>
Ausgegeben wird:
0
1
2
3
4
5
6
7
8
9
10

while Schleife

<?php

$q=0;
while ($q <5)

{

echo $q;
$q++;

}

?>php

Abbruch von Schleifen durch break

<?php
$a=0;
while ($a<11)

{
$i=0;
while ($i<6)

  {
if($i>3) break 1;
$i++;
   }

$a++;

echo "<br>";
echo "a :$a";
}

?>
$i erhält maximal den Wert 3, danach "bricht" die Schleife auf dieser Ebene ab.

Abbruch des Skriptes durch die Anweisung "exit".

<?php

exit("Ende");
echo "Endlich Schluss";

?>

Referenzen
Beispiel

<?php

$x=3;
$y=$x;
$y=4;

echo $x;  // ausgegeben wird 3

?>

Änderung der Referenz durch das kaufmännische Und-Zeichen &
Beispiel

<?php

$x=3;
$y=&$x;
$y=4;

echo $x; // ausgegeben wird 4

?>

Beispiel
Durch das kaufmännische Und-Zeichen & wird die Variable $i berechnet. Bei der Definition der Funktion Quadrat
wurde $u verwendet.
<?php

function quadrat (&$u)
{
$u=$u*$u;
}

$i=3
quadrat ($i);

echo $i;  // ohne das kaufmännische Und-Zeichen & erfolgte die Ausgabe 3 (echo $i)

?>

Arrays

Array bezeinet eine Variable, welche aus mehren Elementen besteht.
Arrays enthalten Bezeichner (oder Schlüssel oder Index genannt) für eine bestimmte Speicherstelle im Array.
Der Bezeichner steht in eckiger Klammer.

<?php

$array ['vorname'] = "Vorname";
$array ['nachname'] = "Nachname";

echo $array ['vorname'];

?>

<?php
$i=0;
while ($i<21)
{

$array[]="Durchgang $i";
$i++;

}
print_r ($array);

?>

Durch die Funktion print_r() wird der gesamte Inhalt der Variable angezeigt.

ausgegeben wird:

Array ( [0] => Durchgang 0 [1] => Durchgang 1 [2] => Durchgang 2 [3] => Durchgang 3 [4] => Durchgang 4 [5] => Durchgang 5 [6] => Durchgang 6 [7] => Durchgang 7 [8] => Durchgang 8 [9] => Durchgang 9 [10] => Durchgang 10 [11] => Durchgang 11 [12] => Durchgang 12 [13] => Durchgang 13 [14] => Durchgang 14 [15] => Durchgang 15 [16] => Durchgang 16 [17] => Durchgang 17 [18] => Durchgang 18 [19] => Durchgang 19 [20] => Durchgang 20 )

<?php
 
$array =  array ('bezeichner'  => 'Wert', 'key'  => 'value');

echo $array ['key'];      // Ausgabe value

?>

einem Bezeichner wird ein Wert zugeordnet (durch denOperator  =>)

Mehrdimensionale Arrays

<?php
$array ['person1'] ['vorname']="Vorname";
$array ['person1'] [nachname']="Nachname";

?>

<?php
$array= array ('bezeichner' =>array( 'key' =>'value'));
echo $array ['bezeichner'] ['key'];      //Ausgabe value

?>

Konvertieren von Arrays

Über explode() wird eine Zeichenkette in ein Array verwandelt.

<?php

$Zeichenkette="Heute ist ein Feiertag";

$array=explode (" ", $Zeichenkette);

echo $array [3];  // Ausgabe: Feiertag

?>

Durch die Funktion extract() steht jedes Array-Element unter seinem Bezeichner zur Verfügung.
<?php

$array= array ( 'vorname' => 'vorname',
'nachname' => 'meinname');

extract($array);

echo $nachname;   //Ausgabe meinname

?>


Um aus den Werten von Variablen ein Array zu erstellen, wird die Funktion compact () verwendet.

Beispiel:

<?php
$var1 = "banane";
$var2 = "birne";
$var3 = "apfel";
$array = compact("var1","var2","var3");
print_r($array);
?>

Ausgabe: Array ( [var1] => banane [var2] => birne [var3] => apfel )

Arrays miteinander vereinen durch array_merge()

<?php

$array1=array('wert1','wert2','wert3');
$array2=array('wert4','wert5');
$array=array_merge($array1,$array2);
print_r($array);

?>
ausgegeben wird:

Array ( [0] => wert1 [1] => wert2 [2] => wert3 [3] => wert4 [4] => wert5 )

Arrays verbinden durch array_combine()

<?php

$array1=array('wert1','wert2');
$array2=array('a1','b1');
$array=array_combine($array1,$array2);
print_r($array); // ausgegeben wird   Array ( [wert1] => a1 [wert2] => b1 )

?>

in Arrays nach Elementen suchen durch array_search
Es wird zu einem Wert der entsprechende Bezeichner gesucht.

<?php

$array=array('a1' =>'5000', 'a2' => '6000');
$ergebnis = array_search ('6000', $array);
print_r($ergebnis); //ausgegeben wird a2

?>

alternativ dazu die Funktion in_array()

<?php

$array=array('a1' =>'5000', 'a2' => '6000');
$ergebnis = in_array  ('6000', $array);
print_r($ergebnis); // ausgegeben wird 1(True)
?>

Sortieren von Arrays

sort() es erfolgt eine Sortierung von oben nach unten
rsort() es erfolgt die umgekehrte Sortierung

<?php

$array = range(1,20);

rsort($array);

echo implode(" | ",$array);

// ausgegeben wird: 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1

?>

für assoziative Arrays:
asort()
arsort()

Mischung von Arrays durch die Funktion:

shuffle()

Die Funktion shuffle() ist ein Zufallsgenerator für numerische Arrays.

<?php

$array = range(1,20);

shuffle($array);

echo implode(" | ",$array);

//ausgeben wird: 8 | 17 | 18 | 20 | 14 | 15 | 1 | 2 | 12 | 4 | 11 | 10 | 13 | 6 | 16 | 9 | 5 | 19 | 3 | 7

?>

Durchlaufen von Arrays

<?php

$array=array('wert1', 'wert2', 'wert3','wert44');
foreach ($array as $inhalt);
echo $inhalt;     //Ausgabe: wert44
?>

<?php
$array = array ( 'wert1' => 'Inhalt1 ', 'wert2' => 'inhalt2');

while (list ($wert,$inhalt) = each ($array))

echo " $wert : $inhalt";            //Ausgabe: wert1 : Inhalt1 wert2 : inhalt2

?>

Zielgerichtetes Durchgehen von Arrays

<?php
$array = array ( 'Trabant', 'Wartburg', 'Lada', 'BMW', 'VW', 'Renault', 'Audi', 'Peugeot');

echo end ($array);        // letztes Element
echo current ($array);  // Wert des aktuellen Elementes (Bezugspunkt)
echo prev ($array);     // ein Wert zurück
echo next ($array);     // ein Wert vor
echo key ($array);     // Bezeichner des aktuellen Elementes
echo reset($array);    // zurücksetzen
echo current ($array);
echo key ($array);
?>

//Ausgabe: PeugeotPeugeotAudiPeugeot7TrabantTrabant0

Reguläre Ausdrücke

Reguläre Ausdrücke sind Suchmuster.

<?php
$string="Dominic";
if ( eregi ( "[abcdefghij]ominic", $string )) echo "enthalten";

// Ausgabe: enthalten
?>

<?php
$string="kaminski";
if (eregi ("[uvwxy||(abcdefghijk)]aminski",$string )) echo "enthalten";       //Operator || Oder

?>

Oder-Verknüpfungen (Pipe) können zum Suchen von Wörtern eingesetzt werden.

<?php
$string="Im Juli 2007 haben wir schlechtes Wetter";
if (eregi ("Juli | August | September",$string )) echo "enthalten";

?>

Der Punkt als Platzhalter:

<?php
$string="August";
if (eregi (".ugust",$string)) echo "enthalten";  // Ausgabe enthalten

?> 

Durch das .* werden beliebig viele Zeichen zwischen "Ged" und "ld" erfasst.

<?php
$string="Geduld";
if (eregi ("Ged(.*)ld", $string)) echo "enthalten" ;

?>

ersetzten String ausgeben:

<?php
$string="Übungsaufgabenbuch";
$string=eregi_replace( "Übungs(.*)buch", "\\1", $string);
echo $string; // Ausgabe aufgaben

?>

Wird ein ^ -Zeichen einem Ausdruck vorangestellt, wird nur mit dem Anfang einer Zeichenkette verglichen.

<?php
$string1="Haustür";
$string2="Türsteher";
if ( eregi ("^Tür", $string1)) echo "enthalten in 1";
if ( eregi ("^Tür", $string2)) echo "enthalten in 2";
// ausgegeben wird: enthalten in 2

?>

Umfassende Prüfungen durch geschweifte Klammern (Delimiter). So kann geprüft werden, ob ein Zeichen viermal
hintereinander vorhanden ist.


<?php
$string="Romyyyyyyy";
if( eregi( "y{5}", $string)) echo "enthalten";

?>

Fehler in PHP-Skripten

Meldungen

1. Hinweise (Notices)
Der Code ist unschön geschrieben.
z.B.
<?php
echo $array [vorname];

?>

so ist es richtig:
<?php
echo $array ['vorname']

?>

2. Warnungen
Fehler im Code, führen nicht zum Abbruch des Skriptes

3. Fatal Error, Parse Error
Ein Fatal Error führt zum Abbruch des Skriptes.
z.B. vergessenes Semikolon am Ende einer Anweisung

Safe Mode

Serverseitig werden Befehle von der Benutzung in Skripten ausgeschlossen.

Funktionen

Funktionen für Zeichenketten (Zeichenketten-Funktionen)

Die Funktionen dienen der Analyse, Umwandlung und Bearbeitung von Zeichen und Zeichenketten.

Funktionen zur Analyse

strlen()
ermittelt die Länge einer Zeichenkette (Anzahl der Zeichen)

Beispiel:

<?php
$a=Zeichenkette;
$b=ChristophBurghardt;
echo strlen($a)."<br/>";   //Absatz erzeugen durch ."<br/>"
echo strlen($b);

?>

count_chars()
Die Häufigkeit des Vorkommens jedes einzelnen Zeichens wird gezählt.

Beispiel:

<?php
$a=Beispielzeichenkette;
echo count_chars($a,0); // Ausgabe: array

?>

<?php
$a=Beispielzeichenkette;
echo count_chars($a,3); //Ausgabe: einen String mit allen vorkommenden Zeichen Bcehiklnpstz

?>

str_word_count()
Ermittelt die Anzahl der Wörter innerhalb einer Zeichenkette.

Beispiel:

<?php
$a="Ich will mir eine Honda Fireblade kaufen.";
echo str_word_count($a,0); //Ausgabe: 7

?>


Bearbeitungsfunktionen

strtolower()

liefert den String (Zeichenkette) komplett in Kleinbuchstaben zurück

Beispiel:

<?php
$a="Honda";
echo strtolower($a);  // Ausgabe: honda

?>

strtoupper()
liefert den String komplett in Großbuchstaben zurück

Beispiel:

<?php
$a="Honda";
echo strtoupper($a); // Ausgabe: HONDA

?>

ucfirst()
wandelt den ersten Buchstaben einer Zeichkette in einen Großbuchstaben um

Beispiel:

<?php
$a="über";
echo ucfirst($a); // Ausgabe: Über

?>

ucwords()
wandelt den ersten Buchstaben aller Wörter einer Zeichenkette in ein Großbuchstaben um

Beispiel:

<?php
$a= "Heute ist schönes Wetter."; // Ausgabe: Heute Ist Schönes Wetter.
echo ucwords($a);

?>

Bereinigung

chop() oder rtrim()
entfernt alle Whitespaces und Leerzeichen am Ende einer Zeichenkette
(Whitespaces= \n, \r, \t, \v, \0 )



ltrim()
entfernt alle Whitespaces und Leerzeichen am Anfang einer Zeichenkette (l steht für "leading whitespaces")



trim()
entfernt alle Whitespaces und Leerzeichen am Anfang und am Ende einer Zeichenkette



Zerteilung und Zusammenführung

explode()
explode(separator, string, limit)
teilt einen String anhand von Trennzeichen
ist der Parameter Limit vorhanden, wird der String nur bis zu diesem Parameter zerlegt

Beispiel:

<?php
$b= "Haus 1 Garten 1 Insel 1 Brücke 1 Fenster 1 Schaukel 3 Museum 1 Bahnhof 1 Mädchen";
$array = explode (1, $b, 7);
print_r($array);
// Ausgabe: Array ( [0] => Haus [1] => Garten [2] => Insel [3] => Brücke [4] => Fenster [5] => Schaukel 3 Museum [6] => Bahnhof 1 Mädchen )

?>


implode() oder join()
implode(string glue, array parts)
verbindet die Elemente eines Arrays, Verbindung durch den Parameter glue

Beispiel:

<?php
$a=array('Vorname', 'Andreas');
$b=implode( ':',$a);
echo $b; //Ausgabe: Vorname:Andreas

?>


substr()
substr(string, start, length)
liefert einen Teil der Zeichenkette zurück

Beispiel:

<?php
$a="123456789";
echo substr($a, 1, 5); // Ausgabe: 23456

?>


str_pad()
str_pad(string, length, pad, pad_type) pad_type: STR_PAD_LEFT, STR_PAD_BOTH, STR_PAD_RIGHT
erweitert die Zeichenkette

Beispiel:

<?php
$a=Christoph;
$b=Romy;
$c=str_pad($a, 20, $b, STR_PAD_BOTH);
echo $c; // Ausgabe: RomyRChristophRomyRo

?>


Suchen und Ersetzen

strpos()
strpos(String, gesuchter String, Startwert)

Beispiel:

<?php
$a="Drogenstrich Hamburg St.Georg";
echo strpos($a, "St.",3);  //Ausgabe: 21

?>

strrpos()
sucht das letzte Vorkommen des Zeichens
numerischer Wert
bei einem negativen Suchergebnis liefert strrpos() False

Beispiel:

<?php
$a="Afghanistan";
echo strrpos($a, "a"); // Ausgabe: 9

?>

substr_count()
gibt die Anzahl des Vorkommens des gesuchten Strings an
bei negativem Suchergebnis 0

Beispiel:

<?php
$a="strstrstr";
echo substr_count($a,"str"); //Ausgabe: 3

?>

strstr()
sucht das erste Vorkommen des Suchstrings
gibt den Suchstring mit dem Reststring zurück
Diese Funktion unterscheidet Klein- und Großschreibung.

Beispiel:

<?php
$a='Entlasten Sie sich durch ein konsequentes "Nein" wie angemerkt, hat nicht
der Tag zu wenig Stunden, sondern Sie zu viele Aktivitäten.';
echo strstr($a,'sondern'); //Ausgabe: sondern Sie zu viele Aktivitäten.

?>

stristr()
sucht das erste Vorkommen des Suchstrings
gibt den Suchstring mit dem Restring zurück
Diese Funktion unterscheidet nicht Klein- und Großschreibung (case insensitive).

Beispiel:

<?php
$a="Klein- und Großschreibung";
$b= stristr($a, "n");
echo $b;  //Ausgabe: n- und Großschreibung

?>

strchr()
entspricht der Funktion strstr(), nur soll needle als einzelnes Zeichen angegeben werden
Die Funktion sucht das erste Vorkommen des Zeichens und gibt den Reststring zurück.

Beispiel:

<?php
$a="Klein- und Großschreibung";
echo strchr($a, "-"); //Ausgabe: - und Großschreibung

?>


strrchr()
sucht das letzte Vorkommen des gesuchten Zeichens
gibt das gesuchte Zeichen und den Reststring zurück

Beispiel:

<?php
$a="Klein- und Großschreibung";
echo strrchr($a, "i"); //Ausgabe: ibung

?>

ist needle kein String oder Zeichen erfolgt die Umwandlung in ein ASCII-Zeichen (dem Zahlenwert entsprechend)

Beispiel:

<?php
$a="Klein- und Großschreibung";
echo strrchr($a, 105); //Ausgabe: ibung


?>

substr_replace()
substr_replace(string1, string2, start, length)
Mit dieser Funktion ersetzt man einen Teil der Zeichenkette.

Beispiel:

<?php
$a="Christoph Burghardt";
$b="Lisa Burghardt";
echo substr_replace($a, $b, 0,19); //Ausgabe: Lisa Burghardt

?>

str_replace()
str(gesuchter String, neuer Sring, gesamter String)
Innerhalb einer Zeichenkette (gesamter String) wird ein String gesucht und durch einen neuen ersetzt.

Beispiel:

<?php
$a= "Heute, am 24.08.2007, fahre ich mit dem Motorrad nach St.Georg.";
echo str_replace("Motorrad", "Auto", $a); //Ausgabe: Heute, am 24.08.2007, fahre ich mit dem Auto nach St.Georg.

?>

Manipulationen

strrev()
Diese Funktion dreht eine Zeichenkette um.

Beispiel:

<?php
$a="Alles Große und Edle ist einfacher Art";
echo strrev($a); //Ausgabe: trA rehcafnie tsi eldE dnu eßorG sellA

?>

str_shuffle()
Diese Funktion ordnet die Zeichen einer Zeichenkette zufällig an.

Beispiel:

<?php
$a="Der Verzicht hat oft einen besseren Geschmack, als das Verlangen.";
echo str_shuffle($a); //Ausgabe: VnfeannrDrclshstens o nhek irmehab.tceG edrczesg ,as lteie aVea

?>

HTML-Entities

Entities dienen zur Darstellung von Sonderzeichen in HTML.
Ein Entity beginnt mit einem "&" und endet mit einem Semikolon.
Dazwischen befinden sich maximal 6 Buchstaben.

htmlentities()
htmlentities(String, Konstante, Zeichensatz)
Diese Funktion wandelt alle Sonderzeichen einer Zeichenkette in die entsprechenden Entities um.
mögliche Konstanten:
ENT_COMPAT Es werden nur doppelte Anführungszeichen konvertiert.
ENT_QUOTES Es werden alle Anführungszeichen konvertiert.
ENT_NOQUOTES Es werden keine Anführungszeichen konvertiert.
Der standardmäßige Zeichensatz ist ISO-8859-1.
Beispiel:

<?php
$a="<<>>'''";
echo htmlentities($a, ENT_NOQUOTES); //Ausgabe im Quelltext:&lt;&lt;&gt;&gt;'''

?>

htmlspecialchars()
Diese Funktion wandelt nur HTML-spezifische Sonderzeichen in die entsprechenden Entities um.

get_html_translation_table()
Gibt die Übersetzungstabelle an, welche von HTML_ENTITIES oder HTML_SPECIALCHARS benutzt wird.

Beispiel:

<?php
$a= get_html_translation_table(HTML_SPECIALCHARS);
print_r($a);
// Ausgabe im Quelltext:
Array
(
["] => &quot;
[<] => &lt;
[>] => &gt;
[&] => &amp;
)

?>

<?php
$a= get_html_translation_table(HTML_ENTITIES);
print_r($a);
// Ausgabe im Quelltext:
Array
(
[ ] => &nbsp;
[¡] => &iexcl;
[¢] => &cent;
[£] => &pound;
[¤] => &curren;
[¥] => &yen;
[¦] => &brvbar;
[§] => &sect;
[¨] => &uml;
[©] => &copy;
[ª] => &ordf;
[«] => &laquo;
[¬] => &not;
[­] => &shy;
[®] => &reg;
[¯] => &macr;
[°] => &deg;
[±] => &plusmn;
[²] => &sup2;
[³] => &sup3;
[´] => &acute;
[µ] => &micro;
[¶] => &para;
[·] => &middot;
[¸] => &cedil;
[¹] => &sup1;
[º] => &ordm;
[»] => &raquo;
[¼] => &frac14;
[½] => &frac12;
[¾] => &frac34;
[¿] => &iquest;
[À] => &Agrave;
[Á] => &Aacute;
[Â] => &Acirc;
[Ã] => &Atilde;
[Ä] => &Auml;
[Å] => &Aring;
[Æ] => &AElig;
[Ç] => &Ccedil;
[È] => &Egrave;
[É] => &Eacute;
[Ê] => &Ecirc;
[Ë] => &Euml;
[Ì] => &Igrave;
[Í] => &Iacute;
[Î] => &Icirc;
[Ï] => &Iuml;
[Ð] => &ETH;
[Ñ] => &Ntilde;
[Ò] => &Ograve;
[Ó] => &Oacute;
[Ô] => &Ocirc;
[Õ] => &Otilde;
[Ö] => &Ouml;
[×] => &times;
[Ø] => &Oslash;
[Ù] => &Ugrave;
[Ú] => &Uacute;
[Û] => &Ucirc;
[Ü] => &Uuml;
[Ý] => &Yacute;
[Þ] => &THORN;
[ß] => &szlig;
[à] => &agrave;
[á] => &aacute;
[â] => &acirc;
[ã] => &atilde;
[ä] => &auml;
[å] => &aring;
[æ] => &aelig;
[ç] => &ccedil;
[è] => &egrave;
[é] => &eacute;
[ê] => &ecirc;
[ë] => &euml;
[ì] => &igrave;
[í] => &iacute;
[î] => &icirc;
[ï] => &iuml;
[ð] => &eth;
[ñ] => &ntilde;
[ò] => &ograve;
[ó] => &oacute;
[ô] => &ocirc;
[õ] => &otilde;
[ö] => &ouml;
[÷] => &divide;
[ø] => &oslash;
[ù] => &ugrave;
[ú] => &uacute;
[û] => &ucirc;
[ü] => &uuml;
[ý] => &yacute;
[þ] => &thorn;
[ÿ] => &yuml;
["] => &quot;
[<] => &lt;
[>] => &gt;
[&] => &amp;
)

?>

Umkehrung der Übersetzungsrichtung durch die Funktion array_flip().

Beispiel:

<?php
$a= get_html_translation_table(HTML_ENTITIES);
$b=array_flip($a);
print_r($b);
Ausgabe im Quelltext:
Array
(
[&nbsp;] =>  
[&iexcl;] => ¡
[&cent;] => ¢
[&pound;] => £
[&curren;] => ¤
[&yen;] => ¥
[&brvbar;] => ¦
[&sect;] => §
[&uml;] => ¨
[&copy;] => ©
[&ordf;] => ª
[&laquo;] => «
[&not;] => ¬
[&shy;] => ­
[&reg;] => ®
[&macr;] => ¯
[&deg;] => °
[&plusmn;] => ±
[&sup2;] => ²
[&sup3;] => ³
[&acute;] => ´
[&micro;] => µ
[&para;] => ¶
[&middot;] => ·
[&cedil;] => ¸
[&sup1;] => ¹
[&ordm;] => º
[&raquo;] => »
[&frac14;] => ¼
[&frac12;] => ½
[&frac34;] => ¾
[&iquest;] => ¿
[&Agrave;] => À
[&Aacute;] => Á
[&Acirc;] => Â
[&Atilde;] => Ã
[&Auml;] => Ä
[&Aring;] => Å
[&AElig;] => Æ
[&Ccedil;] => Ç
[&Egrave;] => È
[&Eacute;] => É
[&Ecirc;] => Ê
[&Euml;] => Ë
[&Igrave;] => Ì
[&Iacute;] => Í
[&Icirc;] => Î
[&Iuml;] => Ï
[&ETH;] => Ð
[&Ntilde;] => Ñ
[&Ograve;] => Ò
[&Oacute;] => Ó
[&Ocirc;] => Ô
[&Otilde;] => Õ
[&Ouml;] => Ö
[&times;] => ×
[&Oslash;] => Ø
[&Ugrave;] => Ù
[&Uacute;] => Ú
[&Ucirc;] => Û
[&Uuml;] => Ü
[&Yacute;] => Ý
[&THORN;] => Þ
[&szlig;] => ß
[&agrave;] => à
[&aacute;] => á
[&acirc;] => â
[&atilde;] => ã
[&auml;] => ä
[&aring;] => å
[&aelig;] => æ
[&ccedil;] => ç
[&egrave;] => è
[&eacute;] => é
[&ecirc;] => ê
[&euml;] => ë
[&igrave;] => ì
[&iacute;] => í
[&icirc;] => î
[&iuml;] => ï
[&eth;] => ð
[&ntilde;] => ñ
[&ograve;] => ò
[&oacute;] => ó
[&ocirc;] => ô
[&otilde;] => õ
[&ouml;] => ö
[&divide;] => ÷
[&oslash;] => ø
[&ugrave;] => ù
[&uacute;] => ú
[&ucirc;] => û
[&uuml;] => ü
[&yacute;] => ý
[&thorn;] => þ
[&yuml;] => ÿ
[&quot;] => "
[&lt;] => <
[&gt;] => >
[&amp;] => &
)

?>

nl2br()
Diese Funktion ergänzt alle PHP-Umbruchzeichen (\n) mit den entsprechenden HTML-Umbruchzeichen (<br/>.

Beispiel:

<?php
$a="meine\n\n\nZeichenkette";

echo nl2br($a);
//Ausgabe im Quelltext:
meine<br />
<br />
<br />
Zeichenkette

?>

Vergleichsfunktionen

strcmp()
strcmp(string1,string2)
Diese Funktion führt einen binären Vergleich durch.

1.Beispiel:

<?php
$a="jkl";
$b="zz";
echo strcmp($a,$b); //Ausgabe:-1

?>

2.Beispiel:

<?php
$a="z";
$b="Z";

echo strcmp($a,$b); //Ausgabe:1

?>

Rückgabewerte:
 0=die Zeichenketten sind identisch
 1=string1 > string2
-1=string1 < string2

strcasecmp()
Diese Funktion entspricht der Funktion strcmp(), ist aber Case-insensitiv.

<?php
$a="z";
$b="Z";

echo strcasecmp($a,$b); //Ausgabe:0

?>

Natürlicher Vergleich

strnatcmp()
Diese Funktion führt einen natürlichen Vergleich durch.

Beispiel:

<?php
$a=array('Haus12', 'Haus2', 'Haus10', 'Haus1');
$b=array('Haus12','Haus2','Haus10','Haus1');
usort($a,'strcmp');
usort($b, 'strnatcmp');


echo "binäre Sortierung:<br/>";
print_r ($a);

echo "<br/>";
echo 'natürliche Sortierung:<br/>';

print_r ($b);

?>

//Ausgabe:
binäre Sortierung:
Array ( [0] => Haus1 [1] => Haus10 [2] => Haus12 [3] => Haus2 )
natürliche Sortierung:
Array ( [0] => Haus1 [1] => Haus2 [2] => Haus10 [3] => Haus12 )

strnatcasecmp()
entspricht der Funktion strnatcmp() - ist aber Case-insensitive

Rückgabewerte:
 0=die Zeichenketten sind identisch
 1=string1 > string2
-1=string1 < string2


Ähnlichkeitsvergleich

similar_text()
similar_text(string1, string2, percent)

Beispiel:

<?php
$a="Mayer";
$b="Mueller";
echo similar_text($a,$b);  //Ausgabe:3
echo similar_text("Mayer", "maier"); //Ausgabe:3

?>

levenshtein()
Diese Funktion berechnet die minimale Anzahl von Zeichen, welche eingefügt, ersetzt oder gelöscht werden müssen,
um den String1 in den String2 umzuwandeln.

Beispiel:

<?php
$a="Christoph Burgardt";
$b="Lisa Burghardt";
echo levenshtein($a,$b);  //Ausgabe: 8

?>

Ausgabefunktionen

echo()
bei doppelten Anführungszeichen Ausgabe des Variableninhalts
bei einfachen Anführungszeichen Ausgabe eines Sprachkonstrukts

Beispiel:

<?php
$a="Heute ist schönes Wetter.";
echo "$a"; //Ausgabe: Heute ist schönes Wetter.
echo "<br/>"; //Absatz in PHP
echo '$a'; //Ausgabe: $a

?>

print()
Die Funktionsklammern sind nicht erforderlich.

printf()
printf(Format,String)
Die Formatierungsanweisungen fangen mit einem Prozentzeichen an.

0 oder Leerzeichen, Auffüllung des Strings
- Ausrichtung des Stings links
Länge des Strings
Anzahl der Dezimalstellen

Formatangaben:
b, Integer Binärwert
c, Integer ASCII-Zeichen
d, Integer Dezimalwert signed
u, Integer Dezimalwert unsigned
f, float Fließkommazahl
o, Integer Oktazahl
s, String
x, Integer Hexadezimalzahl Kleinbuchstaben
X, Integer Hexadezimalzahl Großbuchstaben

Beispiel:

<?php
$a=(21);
printf("%010d%020d",$a,$a); //Ausgabe: 000000002100000000000000000021

?>

sprintf()
Diese Funktion gibt wie printf() einen formatierten String zurück. Allerdings nicht als Ausgabe auf der Konsole.


str_repeat()
str_repeat(string,n)
ermöglicht ein Wiederholen der Zeichenkette

Beispiel:

<?php
$a="5025";
echo str_repeat($a,3); //Ausgabe: 502550255025

?>


Zeichenfunktionen

chr()
Umwandlung eines ASCII-Wertes in die symbolische Darstellung

Beispiel:

<?php
$a="60";
echo chr($a); //Ausgabe: <

?>

ord()
Gegenstück zu chr()

Beispiel:

<?php
$a="<";
echo ord($a); //Ausgabe: 60

?>


Mathematische Funktionen

abs()
Absolutwert

Beispiel:

<?php
$a="-0.001";
echo abs($a); //Ausgabe: 0.001

?>

ceil()
Aufrunden einer Zahl

Beispiel:

<?php
$a="-4.5";
echo ceil($a); //Ausgabe: -4

?>

floor()
Abrunden einer Zahl

Beispiel:

<?php
$a="-4.5";
echo floor($a); //Ausgabe: -5

?>

round()
round(Zahl, Nachkommastelle zum Runden)
entspricht dem kaufmännischem Runden

Beispiel:

<?php
$a="1.5555555";
echo round($a,4); //Ausgabe: 1,5556

?>

exp()
exp(float number)
gibt die Potenz e hoch number zurück
e = eulersche Zahl ~ 2,71828
Beispiel:

<?php
$a="2";
echo exp($a); //Ausgabe: 7.38905609893

?>

log()
log(float numer)
Basis ist e~2,71828

Beipiel:

<?php
$a="9";
echo log($a); //Ausgabe: 2.19722457734

?>

Probe: e hoch 2.19722457734 = 9

log10()
Basis ist 10

Beispiel:

<?php
$a="9";
echo log10($a); //Ausgabe: 0.954242509439

?>

Probe: 10 hoch 0.954242509439 = 9

pow()
pow(Basis, Exponent)

Beispiel:

<?php
$a="6";
$b="2";
echo pow($a,$b); //Ausgabe: 36

?>

sqrt()
berechnet die Quadratwurzel

Beispiel:

<?php
$a="121";
echo sqrt($a); //Ausgabe: 11

?>

max()
numerisch größter Eingabewert

Beispiel:

<?php
$a="1";
$b="0.001;
$c="-0.001;
echo max($a,$b,$c); //Ausgabe: 1

?>

min()
numerisch kleinster Eingabewert

Beispiel:

<?php
$a="1";
$b="7";
$c="-1";
$d="-1.11";
echo min($a,$b,$c,$d); //Ausgabe: -1.11

?>


Kreiszahl π

pi()

Beispiel:

<?php
echo pi(); //Ausgabe: 3.14159265359

?>

PHP-Konstante M_PI

Beispiel:

<?php
echo M_PI; //Ausgabe: 3.14159265359

?>

Trigonometrische Funktionen

Umrechnung der Gradzahl des Winkels in das entsprechende Bogenmaß
Bogenmaß= Grad x π /180

Umwandlungsfunktionen

deg2rad()
Umwandlung des Winkels von Grad in Bogenmaß

Beispiel:

<?php
$a=90;
echo deg2rad($a); // Ausgabe:
1.57079632679

?>

rad2deg()
Umwandlung des Winkels von Bogenmaß in Grad

Beispiel:

<?php
$a=
1.57079632679;
echo rad2deg($a); //Ausgabe:
89.9999999997

?>

sin()
Eingabe im Bogenmaß

Beispiel:

<?php
$a=90;
echo sin(deg2rad($a)); //Ausgabe: 1

?>

cos()
Eingabe im Bogenmaß

Beispiel:

<?php
$a=180;
echo cos(deg2rad($a)); //Ausgabe: -1

?>

tan()
Eingabe im Bogenmaß

Beispiel:

<?php
$a=45;
echo tan(deg2rad($a)); //Ausgabe: 1

?>

asin()
Arcus-Sinus (Arcus, Arkus lat. Bogenmaß eines Winkels)
Ausgabe im Bogenmaß, Umwandlung in Grad durch rad2deg()

Beispiel:

<?php
$a=1;
echo rad2deg(asin($a)); //Ausgabe: 90

?>

acos()
Arcus-Cosinus
Ausgabe im Bogenmaß, Umwandlung in Grad durch rad2deg()

Beispiel:

<?php
$a=(-1);
echo rad2deg(acos($a)); //Ausgabe: 180

?>

atan()
Arcus-Tangens

Beispiel:

<?php
$a=1;
echo rad2deg(atan($a)); //Ausgabe: 45

?>

atan2()
Arcus-Tanges ermittelt aus dem X- und Y-Wert

Beispiel:

<?php
$a=1; //X-Wert
$b=1; //Y-Wert
echo rad2deg(atan2($a,$b)); //Ausgabe: 45

?>

Konvertierungsfunktionen

Zahlensysteme

Dual, Basis 2, benutzte Ziffern 0 und 1,  Beispiel: 111 Dual 1*2^2 + 1*2^1+1*2^0  = 7  Dezimal
Oktal, Basis 8, benutzte Ziffern 0 bis 7, Beispiel: 323 Oktal 3*8^2 + 2*8^1 + 3*8^0 = 211 Dezimal
Dezimal, Basis 10, benutzte Ziffern 0 bis 9
Hexadezimal, Basis 16, benutzte Ziffern 0 bis 9, benutzte Zeichen A bis F, A=10, B=11, C=12, D=13, E=14, F=15
Beispiel: 1C13 Hexadezimal 1*16^3 + 12*16^2 + 1*16^1 + 3*16^0 = 7187 Dezimal

Universelle Konvertierungen

base_convert()

base_convert(string, fromebase, tobase)

Beispiele:

<?php
$a=111;
echo base_convert($a, 2, 10); //Ausgabe: 7

?>

<?php
$a="1C13";
echo base_convert($a, 16, 10); // Ausgabe: 7187 von Hexadezimal (16) nach Dezimal (10)

?>

Dezimale Konvertierungen

bindec()
binär in dezimal

Beispiel:

<?php
$a="001000111110000111";
echo bindec($a); //Ausgabe: 36743

?>

decbin()
dezimal in binär

<?php
$a="36743";
echo decbin($a); //Ausgabe:
1000111110000111

?>

octdec()
oktal in dezimal

Beispiel:

<?php
$a="323";
echo octdec($a); //Ausgabe: 211

?>

decoct()
dezimal in oktal

Beispiel:

<?php
$a="211";
echo decoct($a); //Ausgabe: 323

?>

hexdec()
hexadezimal in dezimal

Beispiel:

<?php
$a="1C13";
echo hexdec($a); //Ausgabe: 7187

?>

dechex()
dezimal in hexadezimal

Beispiel:

<?php
$a="7187";
echo dechex($a); //Ausgabe: 1c13

?>

Zufallsgeneratoren

rand()

rand(min,max)

Beispiel:

<?php
$a=getrandmax(); // größtmöglichster Zufallswert
$b=10; // kleinstmöglichster Zufallswert 10
echo $a; // Ausgabe: 32767
echo "<br/>";
echo rand($b,$a); //Ausgabe: Zufallswert

?>

Ab der PHP-Version 4.2.0 ist es nicht mehr notwendig, den Zufallsgenerator über die Funktion srand()
zu initialisieren.

mt_rand()
mt_rand(min,max)

Beispiel:

<?php
$a=mt_getrandmax(); // größtmöglichster Zufallswert
$b=100;
echo $a; //Ausgabe:
2147483647 über 2 Milliarden Zufallswerte
echo "<br/>";
echo mt_rand($b,$a); //Ausgabe: Zufallswert

?>

Formatierungen

number_format()
number_format( Zahl, Anzahl der Dezimalstellen, Trennzeichen zwischen der Ganzzahl und den Dezimalstellen,
Trennzeichen zwischen den Tausendern )

Beispiel:

<?php
$a="1000000";
$b="5000,50";
$c="11110,00003";
echo number_format($a); //Ausgabe: 1,000,000 (ohne Angabe erfolgt die Darstellung
echo "<br/>";                 // mit einem Komma zwischen den Tausendern)
echo number_format($b,2); //Ausgabe: 5,000.00 (ohne Angabe erfolgt die Darstellung mit einem Punkt
echo "<br/>";                     //zwischen der Ganzzahl und den Dezimalstellen)
echo number_format($c,10,",","."); //Ausgabe: 11.110,0000000000

?>

money_format()
money_format(Format,Zahl)
funktioniert nicht auf den Windows-Systemen

Beispiel:

<?php
$number = 1234.56;
setlocale(LC_ALL, 'de_DE');
echo money_format('%i', $number); //Ausgabe: 1.234,56 EUR

?>

Datum und Uhrzeit

Es werden das Datum und die Uhrzeit vom Server abgefragt.

date()
date(Format, Timestamp)
Die Angabe von Timestamp ist optional. Fehlt die Angabe von Timestamp, dann wird das aktuelle Datum und die aktuelle
Uhrzeit angezeigt. Der Parameter Timestamp wird in Form einer positiven oder negativen Dezimalzahl angegeben.
Diese Dezimalzahl enthält die Anzahl der vergangenen Sekunden ab dem 1. Januar 1970 00:00:00 GMT (Beginn
der Unix-Epoche). Die maximale Größe der Dezimalzahl beträgt 32 Bit.
Die Zeichen, die nicht formatiert werden sollen, müssen mit einem Backslash escapt werden (\D\a usw.).
Weiterhin müssen einfache Anführungszeichen verwendet werden, ansonsten wird \n nicht als n sondern als Zeilenumbruch
dargestellt.

Beispiele:

<?php
echo date('\D\a\t\u\m \u\n\d \U\h\r\z\e\i\t M l H\:i\:s');  //Ausgabe:
Datum und Uhrzeit Sep Monday 11:22:34

?>

<?php
echo date('\D\a\t\u\m \u\n\d \U\h\r\z\e\i\t Y M d l H\:i\:s',-494748388); //Ausgabe: Datum und Uhrzeit 1954 Apr 28
                                                                                                           // Wednesday 18:53:32
?>

<?php
echo date('\D\a\t\u\m \u\n\d \U\h\r\z\e\i\t Y M d l H\:i\:s',494748388); //Ausgabe:
Datum und Uhrzeit 1985 Sep 05
                                                                                                         // Thursday 08:06:28
?>

zugelassene Zeichen:
a= am oder pm
A= AM oder PM
B= Swatch-Internetzeit
d= Tag des Monats (zweistellig z.B. 03)
D= Tag der Woche mit drei Buchstaben (z.B. Mon)
F= Monat als ganzes Wort (z.B. December)
g= 12-Stunden-Format ohne führende 0
G= 24-Stunden-Format ohne führende 0
h= 12-Stunden-Format mit führender 0
H= 24-Stunden-Format mit führender 0
i= Minuten mit führender 0
I= Sommerzeit (1 ja, 0 nein)
l= ausgeschriebener Tag der Woche (z.B. Saturday)
L= Schaltjahr (1 ja, 0 nein)
m= Monat als Zahl mit führender 0
M= Monatsname mit drei Buchstaben
n= Monat als Zahl ohne führende 0
O= Zeitunterschied zur Greenwich Time GMT in Stunden
r= RFC 822-formatiertes Datum
s= Sekunden mit führender 0
S= Anhang der englischen Aufzählung für einen Monatstag (mit j empfohlen) jS
t= Anzahl der Tage des angegebenen Monats
T= Zeitzoneneinstellung des Rechners
U= Sekunden seit Beginn der Unix-Epoche = time()
w= numerischer Tag einer Woche (0 für Sonntag, 1 für Montag)
W= Wochennummer des Jahres ISO-8601
y= Jahreszah,l zweistellig
Y= Jahreszahl, vierstellig
z= der Tag eines Jahres
Z= Offset (Ausgleich) der Zeitzone in Sekunden

mktime()
mktime(Stunde, Minute, Sekunde, Monat, Tag, Jahr)
Die Funktion mktime() liefert den Unix-Timestamp.

<?php
$a=mktime(0,0,0,9,9,1985);
echo date('Y M d l H\:i\:s', $a); //Ausgabe:
1985 Sep 09 Monday 00:00:00

?>

time()
Die Funktion time() liefert den gegenwärtigen Timestamp.

strtotime()
strtotime(Datum,Timestamp)
Jedes beliebige Datum (englisches Format) wird in den entsprechenden Unix-Timestamp umgewandelt.
Fehlt der zweite Parameter, wird die aktuelle Systemzeit verwendet.

Beispiel:

<?php
$a=strtotime(yesterday,494748388);
$b=strtotime(tomorrow,494748388);
echo date('Y M d l H\:i\:s', $a);  //Ausgabe:
1985 Sep 04 Wednesday 00:00:00
echo "<br/>";
echo date('Y M d l H\:i\:s', $b); //Ausgabe:
1985 Sep 06 Friday 00:00:00

?>

getdate()
getdate(Timestamp)
Diese Funktion wandelt den Timestamp in ein zusammengesetztes Array um.

Elemente des Array's:
seconds Sekunden
minutes Minuten
hours Stunden
mday Tag des Monats
wday Tag der Woche
mon Monat
year Jahr
yday Tag des Jahres
weekday Tag der Woche
month Monat

Beispiel:

<?php
$a=getdate(
496250100);
echo $a['seconds'];
echo "<br/>";
echo $a['minutes'];
echo "<br/>";
echo $a['hours'];
echo "<br/>";
echo $a['mday'];
echo "<br/>";
echo $a['wday'];
echo "<br/>";
echo $a['mon'];
echo "<br/>";
echo $a['year'];
echo "<br/>";
echo $a['yday'];
echo "<br/>";
echo $a['weekday'];
echo "<br/>";
echo $a['month'];

?>

//Ausgabe:
0
15
17
22
0
9
1985
264
Sunday
September

Formatierte Ausgabe

strftime()
strftime(Format, Timestamp)

Beispiel:
unterstützte Formate auf einem Windows-System

<?php
echo strftime('%a %A %b %B %c %d %H %M %y %Z %Y %X %x %w %U %S %p %%',
496250100);
//Ausgabe:
Sun Sunday Sep September 09/22/85 17:15:00 22 17 15 85 Mitteleuropäische Sommerzeit 1985 17:15:00
//09/22/85 0 38 00 PM %

?>

Gültigkeit des Datums

checkdate()
checkdate( Monat, Tag, Jahr)
Suche nach Schaltjahren - (2,29,xxxx)
Beispiel:

<?php
echo checkdate(2,29,1984); //Ausgabe: 1( für True )

?>

Ermittlung des Alters (Beispielaufgabe)

<?php
$a= time();
$b=mktime(0,0,0,2,21,1969);
$c=($a-$b);
echo "Alter: " . floor($c/(365.25*24*60*60)); // Ausgabe: Alter: 38

?>

localtime()
localtime(Timestamp,0 oder 1 oder keine Angabe)
Diese Funktion liefert einen Array.
0 oder keine Angabe= regulärer, numerisch indizierter Array
1= assoziativer Array

Beispiel:

<?php
print_r (localtime(time(),0)); //Ausgabe:
Array ( [0] => 56 [1] => 13 [2] => 14 [3] => 5 [4] => 8 [5] => 107 [6] => 3
                                          // [7] => 247 [8] => 1 )

?>

<?php
print_r (localtime(time(),1)); //Ausgabe:
Array ( [tm_sec] => 59 [tm_min] => 17 [tm_hour] => 14 [tm_mday] => 5
                                           // [tm_mon] => 8 [tm_year] => 107 [tm_wday] => 3 [tm_yday] => 247 [tm_isdst] => 1 )

?>

tm_sec Sekunde
tm_min Minute
tm_hour Stunde
tm_mday Tag des Monats
tm_mon Monat des Jahres, beginnt bei 0 für Januar
tm_year Jahr seit 1900
tm_wday Tag der Woche
tm_yday Tag des Jahres
tm_isdst für das Datum ist die Sommerzeit zu berüchsichtigen

gettimeofday()
Zeitangabe als assoziatives Array

Beispiel:

<?php
print_r (gettimeofday()); //Ausgabe:
Array ( [sec] => 1189015854 [usec] => 971374 [minuteswest] => -120
                                    // [dsttime] => 1 )

?>

sec Sekunden
usec Mikrosekunden
minuteswest Minuten westlich von Greenwich
dsttime Art der Korrektur der Sommerzeit

Kalenderfunktionen

Gregorianischer Kalender
Julianischer Kalender
Julianisches Datum (Anzahl der Tage seit dem 1.1.4713 v.Chr.)
gregorianisches Datum 15. Oktober 1582 entspricht dem julianischem Datum 5. Oktober 1582

cal_info()
liefert Informationen über den angegebenen Kalender
0 Gregorianischer Kalender
1 Julianischer Kalender
2 Jüdischer Kalender
3 Kalender der französischen Revolution

Beispiele:

<?php
print_r(cal_info(0));

?>

//Ausgabe:
Array
(
[months] => Array
(
[1] => January
[2] => February
[3] => March
[4] => April
[5] => May
[6] => June
[7] => July
[8] => August
[9] => September
[10] => October
[11] => November
[12] => December
)

[abbrevmonths] => Array
(
[1] => Jan
[2] => Feb
[3] => Mar
[4] => Apr
[5] => May
[6] => Jun
[7] => Jul
[8] => Aug
[9] => Sep
[10] => Oct
[11] => Nov
[12] => Dec
)

[maxdaysinmonth] => 31
[calname] => Gregorian
[calsymbol] => CAL_GREGORIAN
)

<?php
print_r(cal_info(1));

?>

//Ausgabe:
Array
(
[months] => Array
(
[1] => January
[2] => February
[3] => March
[4] => April
[5] => May
[6] => June
[7] => July
[8] => August
[9] => September
[10] => October
[11] => November
[12] => December
)

[abbrevmonths] => Array
(
[1] => Jan
[2] => Feb
[3] => Mar
[4] => Apr
[5] => May
[6] => Jun
[7] => Jul
[8] => Aug
[9] => Sep
[10] => Oct
[11] => Nov
[12] => Dec
)

[maxdaysinmonth] => 31
[calname] => Julian
[calsymbol] => CAL_JULIAN
)

<?php
print_r(cal_info(2));

?>

//Ausgabe:
Array
(
[months] => Array
(
[1] => Tishri
[2] => Heshvan
[3] => Kislev
[4] => Tevet
[5] => Shevat
[6] => AdarI
[7] => AdarII
[8] => Nisan
[9] => Iyyar
[10] => Sivan
[11] => Tammuz
[12] => Av
[13] => Elul
)

[abbrevmonths] => Array
(
[1] => Tishri
[2] => Heshvan
[3] => Kislev
[4] => Tevet
[5] => Shevat
[6] => AdarI
[7] => AdarII
[8] => Nisan
[9] => Iyyar
[10] => Sivan
[11] => Tammuz
[12] => Av
[13] => Elul
)

[maxdaysinmonth] => 30
[calname] => Jewish
[calsymbol] => CAL_JEWISH
)

<?php
print_r(cal_info(3));

?>

//Ausgabe:
Array
(
[months] => Array
(
[1] => Vendemiaire
[2] => Brumaire
[3] => Frimaire
[4] => Nivose
[5] => Pluviose
[6] => Ventose
[7] => Germinal
[8] => Floreal
[9] => Prairial
[10] => Messidor
[11] => Thermidor
[12] => Fructidor
[13] => Extra
)

[abbrevmonths] => Array
(
[1] => Vendemiaire
[2] => Brumaire
[3] => Frimaire
[4] => Nivose
[5] => Pluviose
[6] => Ventose
[7] => Germinal
[8] => Floreal
[9] => Prairial
[10] => Messidor
[11] => Thermidor
[12] => Fructidor
[13] => Extra
)

[maxdaysinmonth] => 30
[calname] => French
[calsymbol] => CAL_FRENCH
)

gregoriantojd()
gregoriantojd(Monat, Tag, Jahr)
Datum gregorianischer Kalender in einen Tag julianischem Datum

Beispiel:

<?php
echo gregoriantojd(9,20,1985); //Ausgabe:
2446329

?>

jdtojulian()
Tag im julianischen Datum in Datum im julianischen Kalender

Beispiel:

<?php
echo jdtojulian(2446329);  //Ausgabe:
9/7/1985

?>

jdtojewish()
Tag im julianischen Datum in Datum im jüdischen Kalender

Beispiel:

<?php
echo jdtojewish(2446329); //Ausgabe:
1/5/5746

?>

jewishtojd()
jewishtojd(Monat, Tag, Jahr)
Datum im jüdischen Kalender in Tag im julianischen Datum

Beispiel:

<?php
echo jewishtojd(1,5,5746); //Ausgabe:
2446329

?>

jdtounix()
Tag im julianischen Datum in Unix-Timestamp

Beispiel:

<?php
echo jdtounix(2446329); //Ausgabe:
496022400

?>

unixtojd()
Unix-Timestamp in Tag im julianischen Datum

Beispiel:

<?php
echo unixtojd(496022400); //Ausgabe:
2446329

?>

date()

date(Format, Timestamp)

Beispiel:

<?php
echo date('d F Y',496022400); //Ausgabe:
20 September 1985

?>

Übungsaufgabe: Heute ist der 5. September 2007. Dieses Datum entspricht welchem Datum im jüdischen Kalender?

<?php
$a=time();
$b=unixtojd($a);
$c=jdtojewish($b);
echo $c;  //Ausgabe:
13/22/5767  Monat/Tag/Jahr  Monat=13=Elul

?>

HTTP-Funktionen

Vor der Ausführung der Applikation werden Informationen an den Clientbrowser gesendet.
Problem Browsercaching, es müssen immer neue HTML-Seiten erzeugt werden

header()
header(string, replace, response)
replace (optional), bei dem Wert true ersetzt der jetzige einen vorherigen Hearder
response (optional), spezifiziert den HTTP-Respons-Code

Beispiele:

redirect - Umleitung

<?php
header("Location:http://www.christophburghardt.com");
exit; // nachfolgender Code wird nicht ausgeführt

?>

<?php
header("http://www.christoph-burghardt.com/5.php 404 Not Found");

?>

Cachen von dynamischen Inhalten durch den Browser oder Proxy (Programm zwischen Server und Client) verhindern

<?php
header ("Expires: Sun, 9 Sep  2007 06:00:00 GMT"); // Das Ablaufdatum wird auf die Vergangenheit gestellt.
header("Last-Modified:". gmdate()); // Das Datum von den letzten Änderungen wird auf "jetzt" gestellt.
header("Cache-Control: no-store, no-cache, must revalidate");
header("Cache-Control: post-check=0, pre-check=0, false);
header("Pragma: no-cache");
header("Content-type: text/html, charset=UTF-8");

?>

weitere Header-Anweisungen

header("Content-type: image/jpeg");
header("Content-type: image/ping");
header("Content-type: image/gif");
header("Content-type: application/x-shockwave-flash");

header_sent()
prüft ob der Header gesendet wurde

setcookie()
setcookie(cname)
sendet auf den Client ein Cookie

Beispiel:

<?php

$AktuellesDatum = date("d.m.Y H:i:s");
$Gueltigkeit = time()+86400;
setcookie("ErsterBesuch", $AktuellesDatum, $Gueltigkeit);

?>

Cookie auslesen

<?php

echo$_COOKIE['ErsterBesuch'];

?>


print_r($_COOKIE)
prüft ob das Cookie gesetzt wurde


Dateien und Verzeichnisse

disk_free_space()
liefert den freien Speicherplatz

Beispiel:

<?php
echo disk_free_space("E:"); //Ausgabe:
29344419840 (Angabe in Bytes)

?>

disk_total_space()
liefert den gesamten Speicherplatz

Beispiel:

<?php
echo disk_total_space("E:"); //Ausgabe:
163925979136 (Angabe in Bytes)

?>

file_exists()
file_exists(string filename)
prüft ob eine Datei schon existiert
Die zu prüfende Datei muss sich in dem Dateisystem des Servers befinden.

Beispiel:

<?php

$filename="xampp";
if(file_exists($filename))
{
echo "Datei existiert";
} else {
echo "Datei existiert nicht";
}

?>

is_writeable()
prüft ob eine Datei schon existiert und schreibgeschützt ist
Die zu prüfende Datei muss sich in dem Dateisystem des Servers befinden.

is_readable()
prüft ob eine Datei schon existiert und mit dem Lesezugriff geöffnet werden kann
Die zu prüfende Datei muss sich in dem Dateisystem des Servers befinden.

is_executable()
prüft ob eine Datei schon existiert und ausführbar ist
Die zu prüfende Datei muss sich in dem Dateisystem des Servers befinden.

clearstatcache()
clearstatcache(void)
Diese Funktion löscht den gesamten Statuscache.

stat()
liefert einen Array mit Informationen über Dateien

Beispiel:

<?php
print_r(stat(xampp));

?>

//Ausgabe:
Array
(
[0] => 2  (Gerätenummer)
[1] => 0 
[2] => 16895
[3] => 1
[4] => 0
[5] => 0
[6] => 2
[7] => 12288
[8] => 1187601385
[9] => 1187601385
[10] => 1187601384
[11] => -1
[12] => -1
[dev] => 2
[ino] => 0
[mode] => 16895
[nlink] => 1
[uid] => 0
[gid] => 0
[rdev] => 2
[size] => 12288
[atime] => 1187601385  (Zeitpunkt des letzten Zugriffs)
[mtime] => 1187601385  (Zeitpunkt der letzten Änderung)
[ctime] => 1187601384
[blksize] => -1
[blocks] => -1
)

fileatime()
Zeitpunkt des letzten Zugriffs auf die Datei (Unix-Timestamp)

filemtime()
Zeitpunkt der letzten Änderung der Datei (Unix-Timestamp)

filectime()
Zeitpunkt der letzten Änderung von Inode-Informationen der Datei
Inode-Informationen = Eigentümer, Zugriffsrechte, Gruppen und weitere Metadaten

fileowner()
liefert die Benutzer-ID des Dateieigentümers

fileperms()
liefert die Zugriffsrechte auf eine Datei als eine Oktazahl
Die ersten beiden Ziffern stehen für den Dateityp. Die restlichen drei Ziffern stehen für die Zugriffsrechte.
von den restlichen drei die erste Zahl = Zugriffsrechte des Dateieigentümers
von den restlichen drei die zweite Zahl = Zugriffsrechte der Benutzer, welche zur Benutzergruppe des Eigentümers gehören
von den restlichen drei die dritte Zahl = Zugriffsrechte aller übrigen Benutzer
Recht zur Ausführung der Datei = 1
Schreibrecht der Datei =2
Leserecht der Datei = 4
Jede dieser Zahlen bildet eine Summe der verschiedenen Zugriffsrechte.

Beispiel:

<?php
echo fileperms(xampp); //Ausgabe:
16895

?>

filesize()
liefert die Größe einer Datei in Bytes

basename()
extrahiert den Dateinamen aus der vollständigen Pfadangabe

Beispiel:

<?php
echo basename('C:\xampp\htdocs\xampp\img\head-for.gif'); //Ausgabe:
head-for.gif

?>

dirname()
restlicher Verzeichnispfad

Beispiel:

<?php
echo dirname('C:\xampp\htdocs\xampp\img\head-for.gif'); //Ausgabe:
C:\xampp\htdocs\xampp\img

?>

pathinfo()
assoziativer Array

Beispiel:

<?php
print_r(pathinfo('C:\xampp\htdocs\xampp\img\head-for.gif'));

?>
//Ausgabe:
Array
(
[dirname] => C:\xampp\htdocs\xampp\img
[basename] => head-for.gif
[extension] => gif
[filename] => head-for
)

filetype()
Dateityp wird ermittelt

Beispiele:

<?php
echo filetype('C:\xampp\htdocs\xampp'); //Ausgabe: dir (Verzeichnis)

?>

<?php
echo filetype('C:\xampp\htdocs\xampp\img\head-for.gif'); //Ausgabe: file (Datei)

?>

is_dir()
Ist es ein Verzeichnis?

Beispiel:

<?php
if(is_dir('head-for.gif')){echo "True";}else{echo "False";} //Ausgabe: False

?>


is_file()
Ist es eine Datei?

Beispiel:

<?php
if(is_file('head-for.gif')){echo "True";}else{echo "False";} //Ausgabe: True

?>

is_link()
Ist es ein symbolischer Link?    symbolischer Link = Verknüpfung in einem Dateisystem

Beispiel:

<?php
if(is_link('head-for.gif')){echo "True";}else{echo "False";} //Ausgabe: False

?>

rename()
rename(oldname, newname)
Rechte eines Superusers erforderlich,
Dateiverschiebung innerhalb der Verzeichnisstruktur möglich

Beispiel:

<?php
rename('head-for.gif', 'superuser.gif'); // es funktioniert!

?>

chmod()
chmod(filename, mode)
Zugriffsrechte ändern
mode besteht aus 3 oktalen Ziffern
erste Ziffer: Zugriffsrechte des Dateieigentümers
zweite Ziffer: Zugriffsrechte des Benutzers gleicher Benutzergruppe wie der Eigentümer
dritte Ziffer: Zugriffsrechte aller übrigen Benutzer
Recht zur Ausführung 1
Schreibrecht 2
Leserecht 4
Einzelrechte werden addiert z.B. 7= 1+2+4 (Ausführung, Schreibrecht, Leserecht)
vorangestellte 0, damit die Oktalzahl erkannt wird

Beispiel:

<?php
chmod('5.php','0111'); //Änderungen können nicht mehr gespeichert werden

?>

chown()
chown(filename,user)
ändert den Eigentümer der Datei
Parameter user enthält den Namen (ID identification) des Eigentümers
nur für Superuser

Beispiel:

<?php
chown('5.php','567');
echo fileowner('5.php'); //Ausgabe:0 (weil 567 kein registrierter Benutzer ist)

?>

touch()
touch(filename,time,atime)
setzt die Zugriffs- und Modifizierungszeit
time - Zeitpunkt der letzten Dateiänderung
atime - letzter Zugriff

Dateien manipulieren
.aktuelles Verzeichnis ..Parentverzeichnis  /Rootverzeichnis

copy()
copy(string source, string dest)

Beispiel:

C:/xampp/htdocs/5.php

<?php
copy('5.php','C:/xampp/htdocs/xampp/5.php'); // Kopie von 5.php nach C:/xampp/htdocs/xampp

?>

<?php
copy('5.php','../5.php'); // Kopie von 5.php nach C:/xampp

?>

unlink()
unlink(filename)
Datei löschen

Beispiel:

<?php
unlink('C:/xampp/htdocs/xampp/5.php');

?>

rmdir()
rmdir(filename)
Verzeichnis (Ordner) löschen

Dateien öffnen

fopen()
fopen(filename,mode,include_path,zcontext)
öffnet eine Datei oder URL
liefert einen resource-Zeiger (Dateihandle) als Rückgabewert
Die Funktion fgets() liest  die erste Zeile von der Datei, auf welche der Zeiger verweist.
mode = Zugriffstyp auf die Datei

r  Öffnet die Datei nur zum Lesen und positioniert den Dateizeiger auf den Anfang der Datei.

r+  Öffnet die Datei zum Lesen und Schreiben und setzt den Dateizeiger auf den Anfang der Datei.

w  Öffnet die Datei nur zum Schreiben und setzt den Dateizeiger auf den Anfang der Datei sowie die Länge der Datei auf
0 Byte. Wenn die Datei nicht existiert wird versucht sie anzulegen.

w+  Öffnet die Datei zum Lesen und Schreiben und setzt den Dateizeiger auf den Anfang der Datei sowie die Länge der Datei auf 0 Byte. Wenn die Datei nicht existiert, wird versucht sie anzulegen.

a  Öffnet die Datei nur zum Schreiben. Positioniert den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht existiert, wird versucht sie anzulegen.

a+  Öffnet die Datei zum Lesen und Schreiben. Positioniert den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht existiert, wird versucht sie anzulegen.

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo fgets($a); //Ausgabe: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

?>

In Dateien schreiben

fwrite()
fwrite(Dateihandle,string,length)
optionaler Parameter length Das Schreiben wird nach length Bytes beendet.

Beispiel:

<?php
$a=fopen('9.php','w+');
fwrite($a,'Dieses wird in die Datei geschrieben.'); // Die Datei 9.php wird neu im Verzeichnis htdocs angelegt.

?>

Schließen einer Datei

fclose()
fclose(Dateihandle)
nicht notwendig aber empfohlen

Lesen aus einer Datei

filesize()
filesize(filename)
liefert die Dateigröße in Bytes

Beispiel:

<?php
echo filesize('index.htm'); //Ausgabe: 79699

?>

fgetc()
fgetc(Dateihandle)
Diese Funktion liefert einen String, der ein einzelnes Zeichen von der aktuellen Position des Dateizeigers handle enthält.

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo fgetc($a); //Ausgabe: <

?>

fgets()
fgets(Dateihandle,length)
Diese Funktion liefert einen String, der eine Zeile von der aktuellen Position des Dateizeigers handle enthält.

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo fgets($a); //Ausgabe: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

?>

fgetss()
fgetss(Dateihandle,length,allowed)
funktioniert wie fgets(), filtert aber alle HTML- und PHP-Tags heraus

Lesen einer bestimmten Anzahl von Bytes

fread()
fread(Dateihandle,length)
gelesen werden entweder length Bytes oder bis zum Dateiende (EOF-End of File)

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo fread($a,10); //Ausgabe: <!DOCTYPE

?>

Lesen der kompletten Datei

readfile()
readfile(filename,include_path)
Datei braucht zum Lesen weder geöffnet noch geschlossen werden
Parameter include_path auf 1 gesetzt bedeutet, es wird auch in dem Verzeichnis nach der Datei gesucht

include_path
(einbezogener Pfad)
Es wird ein Verzeichnis angegeben, in denen Funktionen nach Dateien suchen.
Beispiel Unix include_path
include_path=.:/home/httpd/php-lib
Beispiel Windows include_path
include_path=".;c:\www\phplib"

Beispiel:

<?php
echo readfile('index.htm'); // es wird der Inhalt im  Browser angezeigt und die Anzahl der Bytes

?>

fpassthru()
fpassthru(Dateihandle)
entspricht der Funktion readfile(), es ist aber der Dateizeiger erforderlich

Beispiel:

<?php
$a=fopen('index.htm','r');
fpassthru($a);

?>

rewind()
rewind(Dateihandle)
setzt den Dateizeiger an den Anfang

file()
file(filename,include_path)
funktioniert wie readfile, Inhalt wird aber als Array zurückgegeben
jedes Element des Array's enthält eine Zeile der Datei

<?php
$a=file('http://www.iqsh.de/');
print_r($a);

?>

Navigation innerhalb der Datei

ftell()
ftell(Dateihandle)
liefert die aktuelle Position des Datei-Zeigers

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo ftell($a); //Ausgabe: 0

?>

rewind()
rewind(Dateihandle)
Mit dieser Funktion setzt man den Dateizeiger auf das erste Byte der Datei.

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
echo rewind($a); //Ausgabe: 0

?>

fseek()
fseek(Dateihandle,offset)
verschiebt den Datei-Zeiger auf offset-Bytes vom Anfang

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
fseek($a,795);
echo fgets($a); //Ausgabe: nk rel="shortcut icon" href="amd.ico" title="icon" >

?>

Verriegelung einer Datei

flock()
flock(Dateihandle,operation)
Parameter operation
1 Leseverriegelung
2 Schreibverriegelung
3 Verriegelung freigeben
4 andere Zugriffe während der Verriegelung erlauben

Beispiel:

<?php
$a=fopen('http://www.christophburghardt.com','r');
flock($a,2);

?>

Verzeichnisse

mkdir()
mkdir(path,mode)
erstellt ein Verzeichnis
mode definiert die Zugriffsrechte - siehe Funktion chmod()
ohne Angabe von mode 0777

Beispiel:

<?php
mkdir(christoph);

?>

chdir()
chdir(dirname)
Verzeichnis wechseln

getcwd()
gibt das aktuelle Verzeichnis zurück

Beispiel:

<?php
echo getcwd() //Ausgabe: C:\xampp\htdocs

?>

rmdir()
rmdir(dirname)
Verzeichnis löschen
das zu löschende Verzeichnis muss leer sein

Beispiel:

<?php
rmdir(christoph);

?>

opendir()
öffnet ein Verzeichnis (Ordner) und gibt einen Verzeichniszeiger zurück

readdir()
readdir(Verzeichniszeiger)
damit liest man die Dateinamen aus dem geöffneten Verzeichnis aus

rewinddir()
rewinddir(Verzeiniszeiger)
setzt den Verzeichniszeiger an die Anfangsposition

closedir()
closedir(Verzeichniszeiger)
schließt ein Verzeichnis

Beispiel:
einen Ordner auslesen

<?php
$a=opendir('E:');
while($b=readdir($a)) echo $b."<br/>"; //Schleife - Ordnerinhalt
closedir($a);

?>

//Ausgabe:
$RECYCLE.BIN
100KM028
Desktop 20.07.2007
Desktop 25.07.2007
DVD Dominic
KK_PDF_1992856_christoph-burghardt_com.pdf
Konten.txt
Lütjensee 18.07.2007
Samsung 40GB
Samsung 80GB
Schule
Sex
System Volume Information

dir()
dir(dirname)
Dies ist ein pseudo-objektorientierter Mechanismus zum Lesen eines Verzeichnisses.

Beispiel:

<?php
$a=dir('C:');
echo $a->path."<br/>"; //Dateipfad
echo $a->handle."<br/>"; //Verzeichnisseiger
while($b=$a->read()) echo $b."<br/>"; //Schleife - Ordnerinhalt
$a->close();

?>

//Ausgabe:
C:
Resource id #2
$Recycle.Bin
AAMSSTP
autoexec.bat
BOOKS
Boot
bootmgr
BOOTSECT.BAK
config.sys
Documents and Settings
Dokumente und Einstellungen
pagefile.sys
Program Files
ProgramData
Programme
System Volume Information
TB.log
Users
Windows
xampp

Sicherheit
Verlagerung von Dateien aus dem Webordner (htdoc)
 
Beispiel:

<?php
$a=fopen('../texts/9.txt','r');
echo fread($a,1000);

?>

HTML Formular

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>
<title> HTML Formular </title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form name="myform" action="process.php" method="POST" target="_blank" enctype="multipart/form-data">
Name: <br/>
<input type="text" size="20" name="name" > <br/> <br/>
Passwort: <br/>
<input type="password" size="20" name="pass" > <br/> <br/>
Beschreibung: <br/>
<textarea rows="10" cols="50" name="text" >
</textarea> <br/> <br/>
Land: <br/>
<select name="land">
<option value="1" selected> Deutschland </option>
<option value="2"> England </option>
<option value="3"> Frankreich </option>
</select> <br/> <br/>
Geschlecht: <br/>
<input type="radio" name="geschlecht" value="1"> weiblich <br/>
<input type="radio" name="geschlecht" value="2"> männlich <br/> <br/>
Hobbies: <br/>
<input type="checkbox" name="hobby"> Schwimmen <br/>
<input type="checkbox" name="hobby"> Wandern <br/>
<input type="checkbox" name="hobby"> Fernsehen <br/> <br/>
<input type="hidden" name="id" value="avcfg$ghjsd">
<input type="file" size="20" name="file"> <br/> <br/>
<input type="submit" value="Absenden">
<input type="reset" value="Zurücksetzen">
</form>
</body>
</html>

//Ausgabe:

Formular


<input type="text">
Eingabefelder
Attribute: name bzw. id, style bzw. class, size, maxlength, value, disabled, readonly

Beispiel:

<?php
echo' <input type="text" name="Postleitzahl" style= "width:300px; height:30px"  maxlength="5">';

?>

<textarea>
Textfelder
Attribute: name bzw. id, style bzw. class, cols, rows, disabled, readonly, wrap (Zeilenumbruch)

Beispiel:

<?php
echo '<textarea name="textfeld" cols="60" rows="40" textarea> </textarea>';

?>

<select name="land">
<option value="1" selected> Deutschland </option>
<option value="2"> England </option>
<option value="3"> Frankreich </option>
</select>
Auswahlfelder
Attribute: name bzw. id, style bzw. class, size, multiple, value

<input type="radio" name="geschlecht" value="1"> weiblich <br/>
<input type="radio" name="geschlecht" value="2"> männlich
Radiobuttons
Es kann nur ein Element der Gruppe ausgewählt werden.
Attribute: name, value, checked (Vorauswahl)

<input type="checkbox" name="hobby"> Schwimmen <br/>
<input type="checkbox" name="hobby"> Wandern <br/>
<input type="checkbox" name="hobby"> Fernsehen
Checkboxen
Es können mehrere Elemente der Gruppe ausgewählt werden.
Attribute: name, value, checked

<input type="hidden" name="id" value="avcfg$ghjsd">
Informationen über nicht ausgewählte Elemente werden an den Server übermittelt.

<input type="password" name="password" value="xx">
Passwortfelder
es werden 2 Formulare definiert a) sichtbare Anzeige b) versteckte Felder

Beispiel:

<html>
<head>
<title> HTML Formular </title>
<script language="JavaScript">
function submit_form()
{
document. login.username.value=document.temp_login.username.value;
document. login.password.value=document.temp_login.password.value;
document.login.submit();
}
</script>
</head>
<body>
<form name="temp_login" action="">
<input type="text" name="username" size="20">
<br/>
<input type="password" name="password" size="20">
<br/>
<a href="javascript:submit_form()">
Anmelden
</a>
</form>
<form name="login" action="login.php">
<input type="hidden" name="username">
<input type="hidden" name="password">
</form>
</body>
</html>

<input type="file" name="myfile" size="40">
Datei-Upload
Attribute: name bzw.id, style bzw. class, size, maxlength, value, accept (text/* oder html/*)

<input type="submit" value="Absenden">
<input type="reset" value="Zürücksetzen">
<input type="button" value= "Start">

Klickbuttons
Attribute: name bzw. id, style bzw. classs, disabled, value

lang_getfrombrowser()
eingestellte Sprache des Browsers ermitteln

$_POST und $_GET
dies sind assoziative Arrays
In diesen Arrays werden die Werte (Benutzername, Passwort) übertragen.

Beispiel:
Datei start.php

<html>
<head>
<title> HTML Formular </title>
<script language="JavaScript">
function submit_form()
{
document. login.username.value=document.temp_login.username.value;
document. login.password.value=document.temp_login.password.value;
document.login.submit();
}
</script>
</head>
<body>
<form name="temp_login" action="">
<input type="text" name="username" size="20">
<br/>
<input type="password" name="password" size="20">
<br/>
<a href="javascript:submit_form()">
Anmelden
</a>
</form>
<form name="login" method="POST" action="login.php">
<input type="hidden" name="username">
<input type="hidden" name="password">
</form>
</body>
</html>

Datei login.php

<?php
$name = $_POST['username'];
$pass = $_POST['password'];
if ($name=='1'&& $pass=='1') {
$vorname='Romy';
$nachname='Grumbach';
$group="1";

}
else if($name=='2' && $pass=='2') {
$vorname='Petra';
$nachname='Haars';
$group="2";

}
else {
$vorname='User';
$nachname='Unknow';
$group="3";

}

?>

<html>
<head>
<title>Benutzer Formular</title>
</head>
<body>
<p><b>Hallo
<?php
echo "$vorname $nachname!";

?>
</b>
</p>

<form name="myform" action="process.php" method="POST">
Wählen Sie die Artikelgruppe: <br/>
<select name="artikel" size="3">

<?php
switch ($group)
{

case 1:
echo '<option value="1">';
echo 'Kleider</option>';
echo '<option value="2">';
echo 'Unterwäsche</option>';
echo '<option value="3">';
echo 'Schuhe</option>';

case 2:
echo '<option value="1">';
echo 'Autos</option>';
echo '<option value="2">';
echo 'Zigaretten</option>';
echo '<option value="3">';
echo 'Zeitungen</option>';

default:
echo '<option value="1" selected >';
echo 'Wohnen</option>';
echo '<option value="2">';
echo 'Essen</option>';
echo '<option value="3">';
echo 'Trinken</option>';

}

?>

move_uploaded_file()
move_uploaded_file(string source, string destination)
ermöglicht den Dateiupload
mittels $_FILES wird auf die hochgeladene Datei zugegriffen

is_uploaded_file()
is_uploaded_file(string source)
prüft ob die hochzuladende Datei gültig ist

Datenübergabe mit dem Query-String

Der Query-String wird an die URL angehängt. Er wird durch eine Fragezeichen von der URL getrennt.
Die einzelnen Parameter des Query-Strings werden durch das kaufmännische Und-Zeichen (&) getrennt.
Durch die Übertragung per GET wird der Query-String automatisch erzeugt. Im Query-String sind keine
Sonderzeichen erlaubt.

rawurlencode()
Diese Funktion ersetzt Sonderzeichen mit einem Prozent-Zeichen,
gefolgt von einer hexadezimalen Zahl (alle Sonderzeichen außer Unterstrich, Bindestrich und Punkt).

Beispiele:

<?php
$a="100$-100Euro";
echo rawurlencode($a); //Ausgabe:
100%24-100%80

?>

<?php
$a="100$-100Euro";
echo '<a href="http://www.christoph-burghardt.com?'. rawurlencode($a) . '">';
//Ausgabe: <a href="http://www.christoph-burghardt.com?100%24-100%80">

?>

rawurldecode()
Die Sonderzeichen werden wieder ohne Kodierung dargestellt.

md5()
md5(string)
berechnet den MD5-Code, 32-stellige hexadezimale Zahl

Beispiel:

<?php
$a="100$-100Euro";
echo md5($a); //Ausgabe:
43ed3125e72499b193a582a1b022b85c

?>

sha1()
sha1(string)
berechnet den SHA1-Hashcode, 40-stellige hexadezimale Zahl

Beispiel:

<?php
$a="100$-100Euro";
echo sha1($a); //Ausgabe:
d7463451b91228a1bea939ebefef47c9ff8ec715

?>

crc32()
crc32(string)
berechnet den CRC32-Wert, Länge von 32Bit

Beispiel:

<?php
$a="100$-100Euro";
echo crc32($a); //Ausgabe:
159601922

?>

Setzen von Cookies

Cookies = Speicherung nutzerbezogener Daten auf dem PC des Nutzers (Client)

Funktion setcookie (Bezeichner, Wert, Ablauf, Pfad, Domain, Sicher)

Beispiel:

<?php
$a=time();
$b=10000;
$c=$a + $b;
setcookie("vorname", "romy", "$c");
echo $c; //Ausgabe Timestamp + 10000 Sekunden

?>

Cookies auslesen

Cookies werden als Variable $_COOKIE (Array) auf dem Client-PC gespeichert.
Über die Funktion print_r kann ein Auslesen erfolgen.

Beispiel:

<?php
print_r ($_COOKIE); //Ausgabe: Array ( [vorname] => romy )

?>

Sessions

benutzerbezogenen Daten werden auf dem Server gespeichert
Die Funktion session_start() erzeugt eine Session oder nimmt die aktuelle wieder auf.
$_SESSION ist
ein assoziatives Array, das die Sessionvariablen für das aktuelle Skript enthält.

Beispiel:

Datei 7.php

<?php
session_start();
$_SESSION['vorname']=Romy;
echo "<a href=8.php> weiter hier </a>"; //Ausgabe: weiter hier (Link)
?>

Datei 8.php

<?php
session_start();
echo $_SESSION['vorname']; // Ausgabe: Romy
echo '<br>';
echo session_id(); //Ausgabe: dfe1f6598670997a5a81d594cb57242d
echo '<br>';
echo session_encode(); //Ausgabe: vorname|s:4:"Romy";
?>

Der Inhalt des globalen Arrays $_SESSION (Romy) wird beim Aufruf von 8.php mit übertragen.
Die Funktion session_encode() dient zum Auslesen der Session-Daten.

php.ini

Bei Shared-Hosting-Paketen wird ein Zugriff auf die php-ini nicht erlaubt.


Login-Funktion

Zugriffsschutz auf Internetseiten
Benutzername und Passwort werden abgefragt
die Daten werden in einer Session gespeichert
die Prüfung erfolgt dann auf den neu aufgerufenen Seiten



MySQL



Spalten der Tabelle= Felder
M= maximale Anzeigenbreite
BLOB= Binary Large Object

MySQL-Datentypen

Zeichenketten-Typen

CHAR(M) Zeichenkette
VARCHAR(M) Zeichenkette (variable Länge)
TINYTEXT oder TINYBLOB Zeichenkette oder BLOB maximal 255 Zeichen
TEXT oder BLOB Zeichenkette oder BLOB maximal 65535 Zeichen
MEDIUMTEXT oder MEDIUMBLOB Zeichenkette oder BLOB maximal 16 Mio. Zeichen
ENUM('wert1', 'wert2', ...) kann nur einen der Auflistungswerte annehmen
SET('wert1', 'wert2', ...) kann nur einen oder mehrere Auflistungswerte annehmen

Numerische-Typen

TINYINT(M) Ganzzahlen von -128 bis 128
TINYINT(M) UNSIGNED Ganzzahlen von 0 bis 255
SMALLINT(M) Ganzzahlen von -32768 bis 32767
MEDIUMINT(M) Ganzzahlen von -8 Mio. bis 8 Mio.
INT(M) Ganzzahlen von -2 Mrd. bis 2 Mrd.
INT(M) UNSIGNED Ganzzahlen von 0 bis 4 Mrd.
FLOAT(M,D) Fließkommazahl
DOUBLE(M,D) Fließkommazahl mit doppelter Genauigkeit
DECIMAL(M,D) Fließkommazahl als Zeichenkette gespeichert, für Währungsfelder geeignet

Datums- und Uhrzeit-Datentypen

DATE Datum in Form von 1969-02-21, von 1000-01-01 bis 9999-12-31
TIME Zeit in Form von 23:59:59
DATETIME Kombination aus DATE und TIME
YEAR(2|4) Jahreszahlen zweistellig oder vierstellig

MySQL-Monitor

Der Start des MySQL-Monitors erfolgt über die Windows Eingabeaufforderung (DOS-Eingabemodus).
Verzeichnis wechseln durch chdir C:\xampp\mysql\bin
Eingabe von mysql -hlocalhost

C:\xampp\mysql\bin> mysql -hlocalhost

Welcome to the MySQL monitor...
mysql>_

Bei eventueller Fehlermeldung Error 1045 (28000): Access denied for user ...

es wird ein Nutzername mit Passwort verlangt
z.B. Nutzername: root   Passwort: root
Eingabe entsprechend ohne Semikolon am Ende   mysql  -hlocalhost -uroot -proot

C:\xampp\mysql\bin> mysql  -hlocalhost  -uroot  -proot

MySQL-Befehle

MySQL beenden

mysql> exit;

Datenbank anlegen

mysql> create database xy;    //xy=Name der neuen Datenbank

Datenbank benutzen

mysql> use xy;  //Datenbank wird zur Benutzung freigegeben Ausgabe: Database changed

Datenbank löschen

mysql> drop database xy;

alle Datenbanken anzeigen

mysql> show databases;

Tabellen erzeugen

mysql> use xy;                                                         //Datenbank xy zur Benutzung auswählen
mysql> create table kunden (                                   // kunden = Name der Tabelle der Datenbank xy
nr int not null auto_increment primary key,                // Primärschlüssel
anrede text,
name text,                                                               //name=Name der Spalte  text=Datentyp
vorname text,
email text not null
) ;

es werden 5 Spalten definiert

Tabellen löschen

mysql> use xy;
mysql> drop table kunden;

Tabellen optimieren

Werden Datensätze gelöscht, so werden sie nur als gelöscht markiert. Tatsächlich sind sie aber noch vorhanden.
Durch den Befehl optimize table werden die Datensätze endgültig gelöscht. Die Performance der Tabelle erhöht sich damit.

mysql> use xy;
mysql> optimize tabel kunden;

Struktur der Tabelle ändern

Tabellenname ändern

mysql>use xy;
mysql> alter table romy rename kunden;  // die Tabelle romy wird umbenannt in Tabelle kunden

Feldnamen (Spaltenname) ändern

mysql>use xy;
mysql> alter table kunden change name kundenname text; // aus dem Feldnamen name wird kundenname mit Dateityp text

Feldlänge ändern

mysql> use xy;
mysql> create table kunden (
nr int not null auto_increment primary key,
anrede text,
name text,
vorname char (19), // Zeichenkette mit fester Länge 19
email text not null
) ;

mysql> alter table kunden change vorname vorname char (49); // ändert die Feldlänge des Feldes vorname auf 49

Feldtyp ändern

mysql> alter table kunden change vorname vorname text; // ändert den Feldtyp des Feldes vorname in text

Feld hinzufügen

mysql> alter table kunden add telefon int;  // fügt das Feld telefon hinzu, Feldtyp int (Ganzzahl binär) Angabe erforderlich

Feld löschen

mysql> alter table kunden drop telefon;

Tabellen anzeigen

mysql> show tables from xy; // zeigt alle Tabellen der Datenbank xy an

Felder anzeigen

mysql> show columns from kunden from xy; // zeigt alle Felder (Spalten) der Tabelle Kunden der Datenbank xy

Datensätze erzeugen

mysql> use xy;
mysql> insert into kunden (anrede, name, vorname, email)
values ('Herr', 'Burghardt', 'Christoph', 'ch.burghardt@googlemail.com');

Datensätze anzeigen

mysql> use xy;
mysql> select * from kunden; // alle Datensätze der Tabelle kunden werden angezeigt

mysql> use xy;
mysql> select vorname, email from kunden; // es werden nur Datensätze der Felder (Spalten) vorname und email angezeigt

Nach einem bestimmten Datensatz suchen

mysql> use xy;
mysql> select * from kunden where vorname='Christoph';

Felder ohne Inhalt anzeigen

mysql> use xy;
mysql> select * from kunden where vorname is null; // zeigt alle Datensätze ohne Inhalt des Feldes vorname

Operatoren in MySQL

and (&&) Und-Bedingung
or (||) Oder-Bedingung
not (!) Umkehrung des Wahrheitswertes
= gleich
> größer als
< kleiner als
<> (!=) ungleich
>= größer oder gleich als
<= kleiner oder gleich als

Beispiel:

mysql> use xy;
mysql> select * from kunden where vorname='romy' || vorname='christoph'; // Auswahl vorname romy oder christoph

Nach Zeichenketten suchen

durch den Like-Operator suche nach:

% beliebiges Zeichen (Anzahl nicht vorgegeben)

Beispiel: 'r%' Es wird nach allen Zeichenketten gesucht mit beliebiger Anzahl von Zeichen aber einem r am Anfang.

_ Genau ein unbekanntes Zeichen.

Beispiel: 'r_my'

mysql> use xy;
mysql> select * from kunden where vorname like 'r_my';

Varianten des Like-Operators

c% alle Zeichenketten mit einem c am Anfang
%c alle Zeichenketten mit einem c am Ende
%ch alle Zeichenketten welche mit ch enden

Beispiel:

Suche nach allen Zeichenketten welche nicht mit einem a beginnen!

mysql> use xy;
mysql> select * from kunden where vorname not like 'a%';

Datensätze sortieren

standardmäßig aufsteigend sortiert asc
absteigende Sortierung durch order by nr desc

Beispiel:

mysql> use xy;
mysql> select * from kunden order by nr desc;

Datensätze sortieren

Vorgegebene Anzahl von Datensätzen anszeigen

mysql> select * from kunden limit 2; // es werden alle Datensätze von Nr.1-2 angezeigt

Ändern von Datensätzen

mysql> update kunden set vorname ='Paul' where name='Burghardt';

Doppelte Datensätze finden

mysql> select distinct vorname from kunden;

Löschen von Datensätzen

mysql> delete from kunden; // Vorsicht - alle Datensätze der Tabelle Kunden werden gelöscht

mysql> delete from kunden where name='Burghardt';

mysql> delete from kunden where name is null; // es werden Datensätze gelöscht bei denen das Feld name leer ist

PHP und MySQL

Verbindung zur Datenbank herstellen

Dateiname: config.php

<?php
$server= "localhost";
$user= "root";
$passwort= "root";
$datenbank= "xy";
$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.");

?>

Datenbankabfrage

<?php
include ('config.php'); // zur Sicherheit ausgelagert
$a= "select * from kunden";
$b= mysql_query ($a);
while ($c=mysql_fetch_object ($b))
{
echo $c -> vorname;
}

?>

Datenbankabfrage und Integrierung von HTML-Elementen

<?php
include ('config.php');
$a= "select * from kunden";
$b= mysql_query ($a);
while ($c=mysql_fetch_object ($b))
{
echo "<b> <i>";
echo $c -> vorname;
echo "</i> </b> <br>";
}

?>

Datenbankabfrage verfeinern

<?php
include ('config.php');
$a= "select * from kunden where Name='Burghardt' or Name='Gabbert'"; //where wie if-Bedingung
$b= mysql_query ($a);
while ($c=mysql_fetch_object ($b))
{
echo "<b> <i>";
echo $c -> vorname;
echo "</i> </b> <br>";
}

?>

Datensätze erzeugen (Formular)

Zwei Dateien sind erforderlich
1. HTML-Formular für die Dateneingabe
2. Datei insert.php als Schnittstelle zwischen Formular und Datenbank

HTML-Formular

<html>
<head>
<title>
Formular für die Dateneingage
</title>
</head>

<body>

<form action="http://localhost/insert.php" method="post">

Anrede: <input type="text" name="anrede">
<br>
<br>
Name:&nbsp;&nbsp; <input type="text" name="name">
<br>
<br>
Vorname:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="text" name="vorname">
<br>
<br>
Emailadresse: <input type ="text" name="email">
<br>
<br>
<input type="submit" value="absenden">

</form>

</body>

</html>

Datei insert.php

<?php
include ('config.php');
$e= $_POST['anrede'];
$f= $_POST['name'];
$g= $_POST['vorname'];
$h= $_POST['email'];

$a = "insert into kunden (anrede, name, vorname, email) values ('$e','$f','$g','$h')";
$b= mysql_query($a);

?>

Datensätze anzeigen (Formular)

<html>
<head>
<title>
Datensätze anzeigen
</title>
</head>

<body>

<?php
include ('config.php');
$a= mysql_query ("select nr, anrede, name, vorname, email from kunden where nr='4'");

$c= mysql_fetch_row($a);

echo $c[0];
echo $c[1];
echo $c[2];
echo $c[3];
echo $c[4];

?>

<form>
<table>
<tr>
<td>Nr</td>
<td><input type="text" name="nr" value="<?php echo $c[0] ?>"> </td>

<td>Anrede</td>
<td><input type="text" name="Anrede" value="<?php echo $c[1] ?>"> </td>

<td>Name</td>
<td><input type="text" name="Name" value="<?php echo $c[2] ?>"> </td>

<td>Vorname</td>
<td><input type="text" name="Vorname" value="<?php echo $c[3] ?>"> </td>

<td>Email</td>
<td><input type="text" name="Email" value="<?php echo $c[4] ?>"> </td>

</tr>
</table>
</form>
</body>
</html>

Datensätze ändern (Formular)

HTML-Formular

<html>
<head>
<title>
Datensätze ändern
</title>
</head>

<body>

<form action= "http://localhost/neu.php" method="post">
NR des zuändernden Datensatzes auswählen: <input type= "text" name= "nr" size= "5">
<br>
<br>
neue Emailadresse: <input type ="text" name= "email" size= "100">
<br>
<br>
<input type= "submit" value= "absenden">

</form>
</body>
</html>

Datei neu.php

<?php
include ('config.php');
$a= $_POST['nr'];
$b= $_POST['email'];
$c="update kunden set email='$b' where nr='$a'";
$d= mysql_query($c);

echo $a;
echo $b;

?>

Datensätze löschen

HTML-Formular

<html>
<head>
<title>
Datensätze löschen
</title>
</head>

<body>

<form action= "http://localhost/loeschen.php" method="post">
NR des zulöschenden Datensatzes auswählen: <input type= "text" name= "nr" size= "5">
<br>
<br>
<input type= "submit" value= "absenden">

</form>
</body>
</html>

Datei loeschen.php

<?php
include ('config.php');
$a= $_POST['nr'];
$c="delete from kunden where nr='$a'";
$d= mysql_query($c);

echo $a;

?>

MySQL-Funktionen in PHP

mysql_affected_rows ()

Gibt an wie viele Reihen (Datensätze) von einer Anwendung (insert into, update, delete) betroffen sind.

Beispiel:

HTML-Formular

<html>
<head>
<title>
Datensätze ändern
</title>
</head>

<body>

<form action= "http://localhost/neu.php" method="post">
NR des zuändernden Datensatzes auswählen: <input type= "text" name= "nr" size= "5">
<br>
<br>
neue Emailadresse: <input type ="text" name= "email" size= "100">
<br>
<br>
<input type= "submit" value= "absenden">

</form>
</body>
</html>

PHP-Skript neu.php

<?php
include ('config.php');
$a= $_POST['nr'];
$b= $_POST['email'];
$c="update kunden set email='$b' where nr='$a'";
$d= mysql_query($c);

$u=mysql_affected_rows ();

echo $a;
echo $b;
echo $u; //Ausgabe: 1

?>

Benutzer wechseln

mysql_change_user()

mysql_change_user(Benutzername, Passwort)

Standard-Zeichensatz ermitteln

mysql_client_encoding()

Beispiel:

<?php
include ('config.php');
$a=mysql_client_encoding();
echo "Zeichensatz:";
echo $a; //Ausgabe: latin1

?>

Verbindung zur MySQL-Datenbank herstellen

mysql_connect()
mysql_connect(Server, Benutzername, Passwort)

Beispiel:

config.php

<?php
$server= "localhost";
$user= "root";
$passwort= "root";
$datenbank= "xy";
$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.");

?>

Verbindung zur MySQL-Datenbank schließen

mysql_close()

Datensatz auswählen

mysql_data_seek()

Beispiel:

<?php
include ('config.php'); //Verbindung zur Datenbank herstellen
$a=mysql_query('select * from kunden'); //alle Datensätze der Tabelle Kunden auswählen
mysql_data_seek ($a,2); // Datensatz 0 (erster Datensatz) auswählen
$b= mysql_fetch_row($a); // Datensatz 0 holen (ziehen)

echo $b; //Ausgabe: Array
print_r($b); // Datensatz 0 wird angezeigt

?>

Datenbank anlegen

Die Funktion mysql_create_db() ist veraltet.

stattdessen:

mysql_query()

<?php
$a=mysql_connect(localhost, root, root); // Server, Benutzername, Passwort
$b=mysql_query("create database gert"); // Eine Datenbank mit dem Namen Gert wird erstellt.

?>

Datenbank löschen

Die Funktion mysql_drop_db() ist veraltet.

stattdessen:

mysql_query()

Beispiel:

<?php
$a=mysql_connect(localhost, root, root);
$b=mysql_query("drop database gert");

?>

Tabelle anlegen

<?php
include ('config.php');
$a= mysql_query("create table romy ( nr int not null auto_increment primary key, anrede text,
name text, vorname text, email text not null) type=myisam; ");

?>

Tabelle löschen

<?php
include ('config.php');
$a=mysql_query("drop table test");

?>

Fehlernummern und Fehlermeldungen anzeigen

Beispiel:

<?php
include ('config.php');
$b=mysql_query("drop database kathy");
echo mysql_errno(); //Ausgabe: 1008
echo mysql_error(); //Ausgabe: Can't drop database 'kathy'. Database doesn't exist

?>

Datensätze als zusammengesetztes Array

mysql_fetch_array()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select * from kunden where nr='2'");
$b= mysql_fetch_array($a);
echo $b;
print_r($b);

?>

Feldinformationen einer Tabelle anzeigen                                Anfang 29.12. 2007 Ende

mysql_fetch_field()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select * from kunden");
$b= mysql_fetch_field($a);
print_r($b);

?>

Ausgabe:

ObjectstdClass Object
(
    [name] => nr
    [table] => kunden
    [def] =>
    [max_length] => 1
    [not_null] => 1
    [primary_key] => 1
    [multiple_key] => 0
    [unique_key] => 0
    [numeric] => 1
    [blob] => 0
    [type] => int
    [unsigned] => 0
    [zerofill] => 0
)

Zeichen markieren

mysql_escape_string()

<?php
$a= " 'Cu' ";
$b= mysql_escape_string($a);
echo $b; //Ausgabe: \'Cu\'

?>

Datensätze als Array

mysql_fetch_row()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select * from kunden where nr='2'");
$b= mysql_fetch_row($a);
echo $b;
print_r($b);

?>

Ausgabe:

ArrayArray
(
    [0] => 2
    [1] => Frau
    [2] => Grumbach
    [3] => Romy
    [4] => romy.grumbach@web.de
)

Alle Datensätze einer Tabelle anzeigen

mysql_fetch_row()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select * from kunden ");
while ($b= mysql_fetch_row($a))  // while-Schleife

{
echo $b[0];
echo '<br>';
echo $b[1];
echo '<br>';
echo $b[2];
echo '<br>';
echo $b[3];
echo '<br>';
echo $b[4];
echo '<br>';
}

?>

Ausgabe:

1
Herr
Burghardt
Christoph
ch.burghardt@googlemail.com
2
Frau
Grumbach
Romy
romy.grumbach@web.de
3
Frau
Gosch
Svenja
svenja_gosch@web.de
4
Herr
Kaminski
Dominic
Dominic.Kaminski@web.de

Feldeigenschaften anzeigen

mysql_field_flags()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select * from kunden ");
$b= mysql_field_flags($a,0);  //0 steht für den Feldnamen nr, 1 für anrede, 2 für name usw.

echo $b;  //Ausgabe: not_null primary_key auto_increment

?>

Maximale Feldlänge anzeigen

mysql_field_len()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select * from kunden ");
$b= mysql_field_len($a,2); // 2 steht für das Feld name
echo $b;  //Ausgabe: 65535

?>

Feldnamen anzeigen

mysql_field_name()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select * from kunden ");
$b= mysql_field_name($a,2);
echo $b;  //Ausgabe: name

?>

Feldzeiger bewegen

mysql_field_seek()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select nr, anrede, name from kunden ");
$b= mysql_field_seek($a,2);
$c= mysql_fetch_field($a);
echo $c ->name; //Ausgabe: name

?>

Tabellennamen anzeigen

mysql_field_table()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select * from kunden ");
$c= mysql_field_table($a,4);
echo $c ; //Ausgabe: kunden

?>

Feldtyp anzeigen

mysql_field_type()

Beispiel:

<?php
include ('config.php');
$a= mysql_query("select * from kunden ");
$c= mysql_field_type($a,4);
echo $c ; //Ausgabe: blob

?>

Speicher freigeben

mysql_free_result()

Am Ende eines jeden Skriptes wird der Speicher freigegeben.

Version der Clientbibliothek anzeigen

mysql_get_client_info()

Beispiel:

<?php
include ('config.php');
$a= mysql_get_client_info();
echo $a;  //Ausgabe: 5.0.37

?>

Hostinformationen anzeigen

mysql_get_host_info()

Beispiel:

<?php
include ('config.php');
$a= mysql_get_host_info();
echo $a;  //Ausgabe: localhost via TCP/IP

?>

MySQL Protokollversion anzeigen

mysql_get_proto_info()

Beispiel:

<?php
include ('config.php');
$a= mysql_get_proto_info();
echo $a;  //Ausgabe: 10

?>

Serverversion anzeigen

mysql_get_server_info()

Beispiel:

<?php
include ('config.php');
$a= mysql_get_server_info();
echo $a;  //Ausgabe: 5.0.37

?>

ID anzeigen

mysql_insert_id()

Diese Funktion liefert die ID des neuangelegten Datensatzes.

Beispiel:

HTML-Formular

<html>
<head>
<title>
Formular für die Dateneingage
</title>
</head>

<body>

<form action="http://localhost/insert.php" method="post">

Anrede: <input type="text" name="anrede">
<br>
<br>
Name:&nbsp;&nbsp; <input type="text" name="name">
<br>
<br>
Vorname:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="text" name="vorname">
<br>
<br>
Emailadresse: <input type ="text" name="email">
<br>
<br>
<input type="submit" value="absenden">

</form>

</body>

</html>

Datei insert.php

<?php
include ('config.php');
$e= $_POST['anrede'];
$f= $_POST['name'];
$g= $_POST['vorname'];
$h= $_POST['email'];
$a = "insert into kunden (anrede, name, vorname, email) values ('$e','$f','$g','$h')";
$b= mysql_query($a);
$r= mysql_insert_id();
echo $r; // Ausgabe: 7
?>

Datenbanken anzeigen

mysql_list_dbs()

Beispiel:

<?php
include ('config.php');
$a= mysql_list_dbs();
while ($c=mysql_fetch_object ($a))
{
echo $c -> Database;
echo '<br>';
}

?>

Ausgabe:

information_schema
cdcol
gert
mysql
phpmyadmin
test
webauth
xy

Tabellen anzeigen

mysql_list_tables()

Beispiel:

<?php
include ('config.php');
$a= mysql_list_tables('xy');
while ($c=mysql_fetch_row ($a))
{
echo $c[0];  //Ausgabe: kunden
echo '<br>';
}

?>

Felder einer Tabelle anzeigen

mysql_list_fields()

Beispiel:

<?php
include ('config.php');
$a= mysql_list_fields('xy','kunden');
$b=mysql_num_fields($a);  //Anzahl der Felder
for($c=0; $c<$b; $c++)   // for-Schleife

{
echo mysql_field_name($a,$c);
echo '<br>';
}

?>

Ausgabe:

nr
anrede
name
vorname
email

Anzahl der Felder einer Tabelle anzeigen

mysql_num_fields()

Beispiel:

<?php
include ('config.php');
$a= mysql_list_fields('xy','kunden');
$b= mysql_num_fields($a);
echo $b; //Ausgabe: 5

?>

Anzahl der Datensätze einer Tabelle anzeigen

mysql_num_rows()

Beispiel:

<?php
include ('config.php');
$a= mysql_query ("select * from kunden");
$b=mysql_num_rows($a);
echo $b;  //Ausgabe: 6

?>

Persistente (fortdauernde) Verbindung herstellen

mysql_pconnect()
mysql_pconnect(server, user, root)

Persistente Verbindungen bleiben auch nach dem Skriptende bestehen.
Sie können auch nicht über mysql_close() beendet werden.
Persistente Verbindungen sind nur bei der Modul-Version möglich.
PHP als Modul-Version
PHP als CGI-Version


Beispiel:

<?php
$a=mysql_pconnect(localhost, root, root);
$b= mysql_list_dbs();
while ($c=mysql_fetch_object ($b))
{
echo $c -> Database;
echo '<br>';
}

?>

Ausgabe:

cdcol
mysql
test
webauth
xy

MySQL-Abfrage senden

mysql_query()

Beispiel:

<?php
include ('config.php');
$a= mysql_query ("select * from kunden");
$b= mysql_num_rows($a);
echo $b;  //Ausgabe: 6

?>

Inhalt eines Feldes anzeigen

mysql_result()

Beispiel:

<?php
include ('config.php');
$a= mysql_query ("select email from kunden");
for($c=0;$c<mysql_num_rows($a);$c++)
{
echo mysql_result($a,$c);
echo '<br>';
}

?>

Ausgabe:

ch.burghardt@googlemail.com
romy.grumbach@web.de
svenja_gosch@web.de
Dominic.Kaminski@web.de
Petra.Haars@iqsh.de

Datenbank auswählen

mysql_select_db()

Beispiel:

<?php
$server= "localhost";
$user= "root";
$passwort= "root";
$datenbank= "xy";
$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.");

?>

Tabellennamen anzeigen

mysql_tablename()

Beispiel:

<?php
include ('config.php');
$a= mysql_list_tables('xy');
for($b=0; $b<mysql_num_rows($a); $b++)
{
echo mysql_tablename($a,$b);  //Ausgabe: kunden
}

?>

Thread-ID anzeigen

mysql_thread_id()

Beispiel:

<?php
include ('config.php');
$b= mysql_thread_id($verbindung);  //$verbindung aus der Datei config.php
echo $b;  //Ausgabe: 22 erhöht sich bei jedem Aufruf des Skripts um 1

?>

Microsoft Access

Beispiel Telefonbuch

Tabelle Personen:

Felder:

ID, Name, Vorname, Vorwahl, Telefonnummer, Veröffentlichen

Tabelle Vorwahlen:

Felder:

Vorwahl, Ort

Eigenschaften von Datenbanken

Enthält Daten über Objekte
Daten sind nach bestimmten Kriterien erfasst, geordnet und gespeichert
autorisierte Personen können auf diese Daten zugreifen

Datenbank = Datenbestand + Datenbankbetriebssystem z.B. Microsoft Access

Schnittstelle zwischen Datenbankbetriebssystem und Nutzer ist SQL (Structured Query Language)

Felder = Eigenschaften der Tabelle

Feld muss in Tabelle einmalig sein

Datentypen für das Beispiel = Zahl, Text; Ja oder Nein

ODBC

Datentypen in Access

Text, 255Zeichen
Memo, 65536Zeichen
Zahl
Datum
Währung
Auto Wert
Ja Nein
OLE-Objekt OLE-Protkoll Word Dateien
Hyperlink


SQLite 3.2.8

relativ junge Datenbank
in PHP integriert
chdir C:\xampp\apache\bin
C-Bibliothek (keine Clientbibliothek) mit eingebettetem Datenbankserver

Befehle Kommandozeile

chdir C:\xampp\apache\bin

C:\xampp\apache\bin> sqlite3 xy

es wird die Datenbank xy geöffnet oder neu angelegt falls nicht vorhanden
sqlite3 bedeutet Version 3

sqlite> create table kunden (anrede text, name text, vorname text, email text);

sqlite> insert into kunden values( 'Herr', 'Burghardt', 'Christoph', 'ch.burghardt@googlemail.com');

sqlite> insert ino kunden values('Frau', 'Grumbach', 'Romy', 'romy.grumbach@web.de');

sqlite> select * from kunden;

sqlite> .exit

sqlite> .databases

sqlite> .help

SQLite Statements:

attach database
begin transaction
comment
commit transaction
copy
create index
create table
create trigger   //trigger Schaltelement
create view
delete
detach database
drop index
drop table
drop trigger
drop view
end transaction
explain
expression
insert
on conflict clause
pragma
replace
rollback transaction
select
update
vacuum

'Schlüsselwort' wörtliche Zeichenkette
"Schlüsselwort"  Bezeichner oder String
[Schlüsselwort] Identifier

Sqlite ist typlos, dies bedeutet:
ein Datentyp braucht bei der Erstellung von Tabellen nicht angegeben werden.

mögliche Datentypen in Sqlite:

varchar(14)
nvarchar(15)
text
integer
float
boolean
clob
blob
timestamp
numeric(10,5)
varying character(24)
nationlal varying charactrer(16)

auto_increment = in MySQL
integer primary key = in Sqlite

Integer primary key

Tabelle erstellen

sqlite> create table benutzer (id integer primary key, name text);

Eingabe ohne id

sqlite> insert into benutzer (name) values ('Romy Grumbach');
sqlite> insert into benutzer (name) values ('Karina Hartz');

Inhalt von der Tabelle benutzer anzeigen

sqlite> select * from benutzer;

Tabelle benutzer löschen

sqlite> drop table benutzer;

Bestimmte Daten der Tabelle abfragen

sqlite> select name from benutzer;

sqlite> select * from benutzer where id='2';

Ausgabe von sqlite verändern

voreingestellt ist:

sqlite> .mode list

Separator selbst wählen

sqlite> .separtor "///"

Ausgabe der Datensätze in einer neuen Reihe
Spaltenname wird mit angezeigt

sqlite> .mode line
sqlite> select * from benutzer;

Ausgabe der Datensätze in einer Tabelle

sqlite> .mode column
sqlite> select * from benutzer;

Breite der Spalten ändern
Tabellenkopf mit anzeigen (.header on)
Tabellenkopf nicht mit anzeigen (.header off)

sqlite> .mode column
sqlite> .width 50 50
sqlite> .header on
sqlite> select * from benutzer;

Ausgabe von HTML-Syntax

sqlite> .mode column
sqlite> .width 30 30
sqlite> .mode html
sqlite> select * from benutzer; // Tags <table> und </table> werden nicht geschrieben

Ausgabe in Dateien schreiben

sqlite> .mode column
sqlite> .width 30 30
sqlite> .mode html
sqlite> .output benutzer.txt
sqlite> select * from benutzer;

Ausgabe in die Datei benutzer.txt   // Tags <table> und </table> wurden hinzugefügt

C:\xampp\apache\bin\benutzer.txt

IDname
1 romy grumbach
2 karina Hartz
3 Christoph Burghardt


Sqlite und PHP5

Datenbank öffnen und wenn nicht vorhanden anlegen

<?php
$a= sqlite_open('xxx');   //Die Datenbank xxx wird im Ordner htdocs angelegt.

?>

Tabelle anlegen

<?php
$a=sqlite_open('xxx');
sqlite_query ($a,  "create table benutzer (
id integer primary key, vorname text, name text)");

?>

Daten in die Tabelle eingeben

<?php
$a=sqlite_open('xxx');
sqlite_query($a, " insert into benutzer (vorname, name) values('romy', 'grumbach')");

?>

Datensätze anzeigen lassen

<?php
$a=sqlite_open('xxx');
$b= sqlite_query($a, "select * from benutzer where id='1' ");
while ($c= sqlite_fetch_array($b))

{

echo $c['vorname'];
echo '<br>';
echo $c['name'];

}

?>

Persistente Verbindungen herstellen
Verbindung bleibt auch nach Ausführung des Skriptes bestehen

sqlite_popen

Datenbank schließen

sqlite_close

Datenbankabfrage durchführen

sqlite_query

Beispiel: siehe

Datenbankabfrage - Rückgabewert als Array

sqlite_array_query

Beispiel:

<?php
$a=sqlite_open('xxx');
$b=sqlite_array_query($a, "select * from benutzer");
foreach ($b as $c)   //Durchlaufen von Arrays

{

echo $c['id'], '<br>', $c['vorname'], '<br>', $c ['name'], '<br>';

}

?>

Rückgabewert wird schneller geliefert

Funktionen einbinden in sqlite

sqlite_create_function

<?php
$a=sqlite_open('xxx');
function x($string)

{

return strrev(md5($string));

}

sqlite_create_function($a, 'xxxx', 'x', 1);

$rows = sqlite_array_query($a, "select xxxx(vorname) from benutzer where id=2");

print_r($rows);

?>


einfache php-Funktion

<?php
function romy()

{

echo 1000+1000;

}

romy(); //Ausgabe: 2000

?>

Wartezeit setzen

sqlite_busy_timeout

Anzahl der geänderten Zeilen

sqlite_changes

Spalte aus der aktuellen Zeile eines Abfrageergebnisses holen

sqlite_column

Aktuelle Zeile als Array

sqlite_current

ähnlich wie sqlite_fetch_array, es wird aber nur eine Zeile angezeigt

Beispiel:

<?php
$a=sqlite_open('xxx');
$b= sqlite_query($a, "select * from benutzer ");
$c= sqlite_current($b);

echo $c['vorname'];
echo '<br>';
echo $c['name'];
echo '<br>';

?>

Strings für  sqlite aufarbeiten

sqlite_escape_string

z.B. einfache Anführungsstriche werden in doppelte umgewandelt

Beispiel:

<?php
$a=sqlite_open('xxx');
$b="'Christoph'";
$c=sqlite_escape_string($b);

echo $b;                            //Ausgabe: 'Christoph'
echo '<br>';
echo $c;                            //Ausgabe: "Christoph"

?>

Nächste Zeile als Array holen

sqlite_fetch_array

Beispiel:

<?php
$a=sqlite_open('xxx');
$b= sqlite_query($a, "select * from benutzer ");
while ($c= sqlite_fetch_array($b))

{

echo $c['vorname'];
echo '<br>';
echo $c['name'];
echo '<br>';

}

?>

Erste Zeile eines Abfrageergebnisses holen

sqlite_fetch_single

Beispiel:

<?php
$a=sqlite_open('xxx');
$b= sqlite_query($a, "select * from benutzer ");

if(sqlite_num_rows($b) > 0)

{

echo sqlite_fetch_single($b);           //Ausgabe: 1 für ID=1

}

?>

Inhalt der ersten Spalte des Abfrageergebnisses

sqlite_fetch_string

<?php
$a=sqlite_open('xxx');
$b= sqlite_query($a, "select * from benutzer where vorname='karina'");  //Groß- und Kleinschreibung und '   '

echo sqlite_fetch_string($b); //Ausgabe: 2 erste Spalte ID=2

?>

Feldnamen anzeigen

<?php
$a=sqlite_open('xxx');
$b= sqlite_query($a, "select * from benutzer where vorname='karina'");
$d= sqlite_field_name($b,"1");

echo $d;     //Ausgabe: vorname  /  Spalte0=ID, Spalte1=vorname, Spalte2=name

?>


PHP Zeichnen, Füllen und Schreiben

Zeichnen einer Linie
imageline()
imageline($im, x1,y1,x2,y2,color)

Hintergrundfarbe ändern
Linienfarbe ändern bzw. definieren
Linienstärke ändern bzw. definieren

Beispiel:

Hintergrund weiß

<?php
header ("Content-type: image/png");
$im =ImageCreate (1000,1000);   //Größe des Bildes 1000 x 1000 Pixel
ImageColorAllocate($im,255,255,255);   //Farbe des Bildes ist weiß
$red = imagecolorallocate($im, 255, 0, 0);   //Definition der Linienfarbe Rot
$a=array($red);
imagesetstyle($im,$a);
imagesetthickness($im,8);   // Definition der Linienstärke 8Pixel
imageline($im,0,400,1000,400,IMG_COLOR_STYLED);   //Linie im x / y Diagramm (x1=0 y1=400 x2=1000 y2=400)
imagepng($im); //Anzeige des Bildes
imagedestroy($im); // der durch das Bild belegte Speicher wird wieder freigegeben

?>

Hintergrund schwarz

<?php
header ("Content-type: image/png");
$im =ImageCreate (1000,1000); //Größe des Bildes 1000 x 1000 Pixel
ImageColorAllocate($im,0,0,0); //Farbe des Bildes ist schwarz
$red = imagecolorallocate($im, 255, 0, 0); //Definition der Linienfarbe Rot
$a=array($red);
imagesetstyle($im,$a);
imagesetthickness($im,8); // Definition der Linienstärke 8Pixel
imageline($im,0,400,1000,400,IMG_COLOR_STYLED); //Linie im x / y Diagramm (x1=0 y1=400 x2=1000 y2=400)
imagepng($im);
imagedestroy($im);

?>

Hintergrund rot

<?php
header ("Content-type: image/png");
$im =ImageCreate (1000,1000); //Größe des Bildes 1000 x 1000 Pixel
ImageColorAllocate($im,255,0,0); //Farbe des Bildes ist rot
$red = imagecolorallocate($im, 255, 0, 0); //Definition der Linienfarbe Rot
$a=array($red);
imagesetstyle($im,$a);
imagesetthickness($im,8); // Definition der Linienstärke 8Pixel
imageline($im,0,400,1000,400,IMG_COLOR_STYLED); //Linie im x / y Diagramm (x1=0 y1=400 x2=1000 y2=400)
imagepng($im);
imagedestroy($im);

?>

Hintergrund grün

<?php
header ("Content-type: image/png");
$im =ImageCreate (1000,1000); //Größe des Bildes 1000 x 1000 Pixel
ImageColorAllocate($im,0,255,0); //Farbe des Bildes ist grün
$red = imagecolorallocate($im, 255, 0, 0); //Definition der Linienfarbe Rot
$a=array($red);
imagesetstyle($im,$a);
imagesetthickness($im,8); // Definition der Linienstärke 8Pixel
imageline($im,0,400,1000,400,IMG_COLOR_STYLED); //Linie im x / y Diagramm (x1=0 y1=400 x2=1000 y2=400)
imagepng($im);
imagedestroy($im);

?>

Hintergrund blau

<?php
header ("Content-type: image/png");
$im =ImageCreate (1000,1000); //Größe des Bildes 1000 x 1000 Pixel
ImageColorAllocate($im,0,0,255); //Farbe des Bildes ist blau
$red = imagecolorallocate($im, 255, 0, 0); //Definition der Linienfarbe Rot
$a=array($red);
imagesetstyle($im,$a);
imagesetthickness($im,8); // Definition der Linienstärke 8Pixel
imageline($im,0,400,1000,400,IMG_COLOR_STYLED); //Linie im x / y Diagramm (x1=0 y1=400 x2=1000 y2=400)
imagepng($im);
imagedestroy($im);

?>

Rechteck zeichnen mit PHP

imagerectangle()
imagerectangle(Bild, x1,y1,x2,y2,Lienienfarbe)

Beispiel:

<?php
header ("Content-type: image/png");
$im =ImageCreate (1280,1024); //Größe des Bildes 1280 x 1024  Pixel
ImageColorAllocate($im,255,255,255); //Farbe des Bildes ist weiß
$red = imagecolorallocate($im, 255, 0, 0); //Definition der Linienfarbe Rot
$a=array($red);
imagesetstyle($im,$a);
imagerectangle($im, 5,5,1279,1023,IMG_COLOR_STYLED);
imagepng($im);
imagedestroy($im);

?>

Rechteck zeichnen farbig mit PHP

imagefilledrectangle()

Beispiel:

<?php
header ("Content-type: image/png");
$im =ImageCreate (1280,1024); //Größe des Bildes 1280 x 1024 Pixel
ImageColorAllocate($im,255,255,255); //Farbe des Bildes ist weiß
$blue = imagecolorallocate($im, 0, 0, 255); //Definition der Füllfarbe blau
$a=array($blue);
imagesetstyle($im,$a);
imagefilledrectangle($im, 5,5,1279,1023,IMG_COLOR_STYLED);
imagepng($im);
imagedestroy($im);

?>

Ellipse zeichnen mit PHP

Die Ellipse ist der geometrische Ort aller Punkte einer Ebene, für die die Summe der Abstände von
zwei festen Punkten konstant 2a ist.

imageellipse()
imageellipse($im, x,y,Breite,Höhe,Linienfarbe)

Beispiel:

<?php
header ("Content-type: image/png");
$im =ImageCreate (1280,1024); //Größe des Bildes 1280 x 1024 Pixel
ImageColorAllocate($im,255,255,255); //Farbe des Bildes ist weiß
$blue = imagecolorallocate($im, 0, 0, 255); //Definition der Linienfarbe blau
$a=array($blue);
imagesetstyle($im,$a);
imageellipse($im,500,50,100,1100,IMG_COLOR_STYLED); // (Bild, x, y, Breite, Höhe, Farbe)
imageline($im,500,50,500,1000,IMG_COLOR_STYLED); // Hilfslinie
imagepng($im);
imagedestroy($im);

?>

Ellipse


Ellipse zeichnen und füllen mit PHP

imagefilledellipse()

Beispiel:

<?php
header ("Content-type: image/png");
$im =ImageCreate (1280,1024); //Größe des Bildes 1280 x 1024 Pixel
ImageColorAllocate($im,255,255,255); //Farbe des Bildes ist weiß
$blue = imagecolorallocate($im, 0, 0, 255); //Definition der Füllfarbe blau
$a=array($blue);
imagesetstyle($im,$a);
imagefilledellipse($im,500,50,100,1100,IMG_COLOR_STYLED); // (Bild, x, y, Breite, Höhe, Farbe)
imagepng($im);
imagedestroy($im);

?>

Teil einer Ellipse zeichnen mit PHP

imagearc()
imagearc($im, x, y, Breite, Höhe, Start (Winkel des Bogens in Grad), Ende (Winkel des Bogens in Grad), Farbe)

Beispiel:

<?php
header ("Content-type: image/png");
$im =ImageCreate (1280,1024); //Größe des Bildes 1280 x 1024 Pixel
ImageColorAllocate($im,255,255,255); //Farbe des Bildes ist weiß
$blue = imagecolorallocate($im, 0, 0, 255); //Definition der Linienfarbe blau
$a=array($blue);
imagesetstyle($im,$a);
imagearc($im, 500, 500, 500, 1000, 0,180,IMG_COLOR_STYLED);
imagepng($im);
imagedestroy($im);

?>

Teil einer Ellipse zeichnen und füllen mit PHP

imagefilledarc()
imagefilledarc($im, x, y, Breite, Höhe, Start (Winkel des Bogens in Grad), Ende (Winkel des Bogens in Grad),
Füllfarbe, Style)

Beispiel:

<?php
header ("Content-type: image/png");
$im =ImageCreate (1280,1024); //Größe des Bildes 1280 x 1024 Pixel
ImageColorAllocate($im,255,255,255); //Farbe des Bildes ist weiß
$blue = imagecolorallocate($im, 0, 0, 255); //Definition der Füllfarbe blau
$a=array($blue);
imagesetstyle($im,$a);
imagefilledarc($im, 500, 500, 500, 1000, 0,180,IMG_COLOR_STYLED,IMG_ARC_PIE);
imagepng($im);
imagedestroy($im);

?>

Kreis zeichnen mit PHP

imagefilledarc()
imagefilledarc($im, x, y, Breite, Höhe, Start (Winkel des Bogens in Grad), Ende (Winkel des Bogens in Grad),
Füllfarbe, Style)

Beispiel:

<?php
header ("Content-type: image/png");
$im =ImageCreate (1280,1024); //Größe des Bildes 1280 x 1024 Pixel
ImageColorAllocate($im,255,255,255); //Farbe des Bildes ist weiß
$blue = imagecolorallocate($im, 0, 0, 255); //Definition der Füllfarbe blau
$a=array($blue);
imagesetstyle($im,$a);
imagefilledarc($im, 500, 500, 500, 500, 0,360,IMG_COLOR_STYLED,IMG_ARC_PIE);
imagepng($im);
imagedestroy($im);

?>

Kreisdiagramm zeichnen, erstellen mit PHP

imagefilledarc()
imagefilledarc($im, x, y, Breite, Höhe, Start (Winkel des Bogens in Grad), Ende (Winkel des Bogens in Grad),
Füllfarbe, Style)

Beispiel:

Darstellung von 75% blau  von 0 bis 270 Grad
Darstellung von 25% gelb von 270 bis 360 Grad

<?php
header ("Content-type: image/png");
$im =ImageCreate (1280,1024); //Größe des Bildes 1280 x 1024 Pixel
ImageColorAllocate($im,255,255,255); //Farbe des Bildes ist weiß
$blue = imagecolorallocate($im, 0, 0, 255); //Definition der Füllfarbe blau
$a=array($blue);
imagesetstyle($im,$a);
imagefilledarc($im, 500, 500, 500, 500, 0,270,IMG_COLOR_STYLED,IMG_ARC_PIE); //75% von 0 bis 270 Grad
$yellow = imagecolorallocate($im, 255, 255, 0); //Definition der Füllfarbe gelb
$b=array($yellow);
imagesetstyle($im,$b);
imagefilledarc($im, 500, 500,500,500,270,360,IMG_COLOR_STYLED,IMG_ARC_PIE); //25% von 270 bis 360 Grad
imagepng($im);
imagedestroy($im);

?>

Kreisdiagramm



Polygon zeichnen mit PHP

Geschlossene ebene Figuren mit geradlinigen Begrenzungsstrecken als Seiten werden Vielecke oder Polygone
genannt. Dreiecke und Vierecke sind besondere  Polygone.

imagepolygon()
imagepolygon($im, Punktkoordinaten als Array, Gesamtzahl der Punkte, Linienfarbe)

Beispiel:

<?php
header ("Content-type: image/png");
$im =ImageCreate (1280,1024); //Größe des Bildes 1280 x 1024 Pixel
ImageColorAllocate($im,255,255,255); //Farbe des Bildes ist weiß
$red = imagecolorallocate($im, 255, 0, 0); //Definition der Linienfarbe rot
$points=array(10,17,100,230,160,270,300,750,400,410); //x1=10 y1=17 x2=100 y2=230 usw.
$a=array($red);
imagepolygon($im,$points,5,$a);
imagepng($im);
imagedestroy($im);

?>

Polygon

PDF-Dateien erstellen mit PHP


funktioniert mit PHP-Version 4.3.4

Beispiel:

<?php
$a=fopen("romy_grumbach.pdf", "w"); // Datei wird geöffnet oder neu erstellt
$b=pdf_open ($a);
pdf_begin_page ($b, 300,400); // innerhalb der PDF-Datei wird eine neue Seite erstellt, Parameter Breite und Höhe
pdf_set_info($b, "Author", "Christoph Burghardt"); // Autor des Dokuments
pdf_set_info($b, "Creator", "PHP 4.3.4"); // erstellt mit
pdf_set_info($b, "Title", "Romy Grumbach"); // Titel
pdf_set_info($b, "Subject", "Erstellung einer PDF-Datei"); //Thema
pdf_set_info($b, "Keywords", "Evit 2007, IQSH, Romy Grumbach"); //Schlüsselwörter
pdf_set_font($b, "Verdana", 6, "winansi");
pdf_set_text_pos($b, 10,370); // Position im Dokument, unten links Startpunkt
pdf_show($b, "Externe Evaluation im Team (EVIT) Evit-Landesbericht 2007 IQSH "); // Inhalt
pdf_continue_text($b, "Evit-Landesbericht 2007 ");  //Inhalt Zeilenumbruch
pdf_continue_text($b, "Romy Grumbach");
pdf_continue_text($b, "Herausgeber: Institut für Qualitätsentwicklung an Schulen Schleswig-Holstein (IQSH)");
pdf_continue_text($b, "Schreberweg 5, 24119 Kronshagen Tel.: (0431) 5403-0");
pdf_end_page($b);
pdf_close($b);
fclose($a);

?>

romy_grumbach.pdf


Notizen im PDF-Dokument anzeigen

Beispiel:

<?php
$c=fopen("dr_gesa_ramm.pdf", "w");
$d=pdf_open($c);
pdf_begin_page ($d, 300,400); // innerhalb der PDF-Datei wird eine neue Seite erstellt, Parameter Breite und Höhe
pdf_set_info($d, "Author", "Christoph Burghardt"); // Autor des Dokuments
pdf_set_info($d, "Creator", "PHP 4.3.4"); // erstellt mit
pdf_set_info($d, "Title", "Dr. Gesa Ramm Evit 2007"); // Titel
pdf_set_info($d, "Subject", "Notizen im PDF-Dokument anzeigen"); //Thema
pdf_set_info($d, "Keywords", "Evit 2007, IQSH, Dr. Gesa Ramm"); //Schlüsselwörter
pdf_set_font($d, "Verdana", 6, "winansi");
pdf_set_text_pos($d, 10,370); // Position im Dokument, unten links Startpunkt
pdf_show($d, "Indikatoren: Beurteilung durch das EVIT-Team Dr. Gesa Ramm"); // Inhalt
pdf_continue_text($d, "Fragebogenerhebungen: Einschätzungen der Schülerinnen und Schüler,"); //Inhalt Zeilenumbruch
pdf_continue_text($d, "Lehrkräfte und Eltern"); //Inhalt Zeilenumbruch
pdf_continue_text($d, "Schulartübergreifende Ergebnisse"); //Inhalt Zeilenumbruch
pdf_continue_text($d, "Ausgewählte schulartspezifische Ergebnisse"); //Inhalt Zeilenumbruch
pdf_add_note($d,10,370,300,400,"Gesa Ramm, so eine hübsche zierliche Frau","Evit 2008","comment",0); //Notiz
//erster Paramter x=10 y=370 Position im Dokument
//zweiter Parameter x=300 y=400 obere rechte Ecke
pdf_end_page($d);
pdf_close($d);
fclose($c);

?>

dr_gesa_ramm.pdf


Einfügen eines Textes in ein PDF-Dokument

pdf_show_boxed()

Durch diese Funktion wird das Problem der Zeilenumbrüche bei der Erstellung eines PDF-Dokuments
umgangen.

Beispiel:

<?php
$c=fopen("dr_gesa_ramm1.pdf", "w");
$d=pdf_open($c);
pdf_begin_page ( $d, 200, 8000 );
pdf_set_info($d, "Author", "Christoph Burghardt"); // Autor des Dokuments
pdf_set_info($d, "Creator", "PHP 4.3.4"); // erstellt mit
pdf_set_info($d, "Title", "Dr. Gesa Ramm Evit 2007"); // Titel
pdf_set_info($d, "Subject", "Einfügen eines Textes in ein PDF-Dokument mit PHP"); //Thema
pdf_set_info($d, "Keywords", "Evit 2007, IQSH, Dr. Gesa Ramm"); //Schlüsselwörter
pdf_set_font ($d, 'Times-Roman', 2, 'winansi' ); //Schrift Größe
pdf_show_boxed ($d, '************Text*************', 10, 10, 150, 7970, 'left' );
pdf_end_page($d);
pdf_close($d);
fclose($c);

?>

dr_gesa_ramm1.pdf


Einfügen von Bildern in ein PDF-Dokument

pdf_place_image()
pdf_place_image(Dokument, Bild, Position, Skalierungsfaktor)
pdf_close_image()
pdf_close_image(Dokument, Bild)

Beispiel:

<?php
$c=fopen("petra_haars.pdf", "w");
$d=pdf_open($c);
$im=pdf_open_jpeg($d,"evit.jpg");
$im1=pdf_open_jpeg($d,"evit1.jpg");
pdf_begin_page ( $d, 200, 500 );
pdf_set_info($d, "Author", "Christoph Burghardt"); // Autor des Dokuments
pdf_set_info($d, "Creator", "PHP 4.3.4"); // erstellt mit
pdf_set_info($d, "Title", "Petra Haars Mein Gender"); // Titel
pdf_set_info($d, "Subject", "Professionelle PDF Dokumente sollten
grundlegende Informationen enthalten."); //Thema
pdf_set_info($d, "Keywords", "Evit 2007, IQSH, Petra Haars, Sachgebietsleiterin, Achterwehr,
Golfclub Lohersand, Elternbeirat, Profilierung im Elternbeirat"); //Schlüsselwörter
pdf_set_font ($d, 'Times-Roman', 4, 'winansi' );  //Schrift Größe
pdf_show_boxed ($d, 'Petra Haars - Mein Gender


Achterwehr
Reihenhausidylle
Elternbeirat
Golfclub Lohersand
IQSH
MBF
Medi Kuhlemann
Netzwerke im MBF


Professionelle PDF-Dokumente (z.B.Evit-Bericht) sollten einige grundlegende In-
formationen enthalten.

Autor des Dokuments
erstellt mit
Schlüsselwörter
Thema
Titel

so sieht es bei Evit 2007 aus - darunter die Infos dieses Dokuments
', 10, 10, 150, 470, 'left' );
pdf_place_image($d,$im,10,270,0.1999); // 0.1999 bedeutet Skalierung des Bildes
pdf_close_image($d, $im);
pdf_place_image($d,$im1,10,150,0.1999);
pdf_close_image($d, $im1);
pdf_end_page($d);
pdf_close($d);
fclose($c);

?>

petra_haars.pdf


Einfügen eines Links in ein PDF-Dokument mittels FPDF-Klasse

Der Ordner fpdf153 wird auf dem Server benötigt (bei xampp im Ordner htdocs speichern).
http://www.fpdf.org


Beispiel:

<?php
define('fpdf fontpath', 'font/');
require('fpdf153/fpdf.php');
$a=new fpdf();
$a->open();
$a->addpage();
$a->SetFont('Arial','B',8);
$a->write(5,"Dr.Gesa Ramm - durch EVIT Beschäftigung sichern - "
,"http://www.amazon.de/PISA-2003-Dokumentation-Erhebungsinstrumente-Gesa/dp/383091606X");
$a->output('dr_gesa_ramm2.pdf');

?>

dr_gesa_ramm2.pdf



E-Mail E-Mails versenden mit PHP

HTML-Skript

<html>
<head>
<title> E-Mail versenden mit PHP </title>
</head>

<body>
<form name="emailform" method="POST" action="sendmail.php">
<h4> Ihre Nachricht </h4>
Name: <br>
<input type="text" name="name" size="30"> <br>
Ihre E-Mail Adresse: <br>
<input type="text" name="email" size="30"> <br>
Text: <br>
<textarea cols="24" rows="4" name="content">
</textarea>
<br>
<br>
<input type="submit" value="send">
<input type="reset" value="clear">
</form>
</body>
</html>


PHP-Skript - Datei sendmail.php

<?php
$a="ch.burghardt@googlemail.com"; // Empfänger
$b="Nachricht von Ihrer Homepage"; // Betreff
$c=$_POST ['name']; // Name
$d=$_POST ['email']; // E-Mail Adresse
$e=$_POST ['content']; // Text
$from="from:$c <$d>"; //Name und E-Mail Adresse zusammen
$g=mail($a,$b,$e,$from);
echo "Ihre Mail wurde verschickt";
print_r('<p>
<a title="zurück zum Anfang" href="http://www.christophburghardt.com/">  //hiermit gelangt man zurück zur Startseite
zurück zur Startseite</a></p>');

?>


Mit PHP eine E-Mail an zwei Empfänger gleichzeitig versenden

Datei sendmail.php

<?php
$a="ch.burghardt@googlemail.com"; // 1.Empfänger
$b="Nachricht von Ihrer Homepage"; // Betreff
$c=$_POST ['name']; // Name
$d=$_POST ['email']; // E-Mail Adresse
$e=$_POST ['content']; // Text
$from="from:$c <$d>"; //Name und E-Mail Adresse zusammen
$g=mail($a,$b,$e,$from);
echo "Ihre Mail wurde verschickt";
print_r('<p>
<a title="zurück zum Anfang" href="http://www.christophburghardt.com/">
zurück zur Startseite</a></p>');

?>

<?php
$r="romy.grumbach@googlemail.com"; // 2.Empfänger
$b="Nachricht von Ihrer Homepage"; // Betreff
$c=$_POST ['name']; // Name
$d=$_POST ['email']; // E-Mail Adresse
$e=$_POST ['content']; // Text
$from="from:$c <$d>"; //Name und E-Mail Adresse zusammen
$rg=mail($r,$b,$e,$from);

?>



Anwendung


Ende Anfang

Inhalt:

Alle Datenbanken anzeigen
Alle Tabellen einer Datenbank anzeigen
Alle Felder einer Tabelle anzeigen
Alle Datensätze einer Tabelle anzeigen
Arrays
Benutzername Passwort
Benutzerverwaltung php
Counter in PHP ohne Datenbank
Dateiupload
Datenbank anlegen
Datenbank löschen
Datensätze erzeugen
Datensätze anzeigen
Datensätze ändern
Datensätze löschen
Datensätze als Array
E-Mail versenden mit php
Excel-Dateien übertragen in MySQL
for-Schleife
Funktionen
Gästebuch erstellen mit php
HTACCESS Zugriffsschutz
Inhalt eines Feldes anzeigen
IP Datum Zeit speichern
Kreisdiagramm erstellen
lang_getfrombrowser()
Login
Login-Funktion php
Mathematik Zahlenfolgen Vollständige Induktion Grenzwerte
Mathematik Differentialrechnung
Mathematik Integralrechnung
MySQL Datenbanken
mysqldump Datenbanksicherung mysql dump
Passwortschutz Benutzerverwaltung
PDF-Dateien erstellen mit PHP
PHP Info
Skripte Umfrage Lehrerbenotung
Sqlite
Sqlite und PHP 5
Tabelle anlegen
Tabelle löschen
Umfrage erstellen mit php
Verbindung zur Datenbank herstellen
Verschlüsselung
while-Schleife
Zeichnen einer Ellipse mit PHP
Zeichnen von Linien mit PHP



Mathematik Forum OnlineMathe
Schule Bildung Schleswig-Holstein Lehrervoting                     
Christoph Burghardt PC Instandsetzung PC Reparatur                      
Einleitung Text PHP 5 MySQL                          
Fortbildungsoffensive  

Valid HTML 4.01 Transitional