Befehlssammlung_PHP_MySQL

Werbung
Befehlssammlung Informatik
PHP und Formulare
PHP
Hinweise
Groß-/Kleinschreibung
PHP unterscheidet zwischen Groß- und Kleinbuchstaben.
PHP
Erläuterung
<?php ... ?>
Begrenzungszeichen (Separator). Sie können überall in der
PHP-Seite stehen und trennen HTML-Tags von PHP-SkriptBefehlen.
einzeiliger Kommentar, auch am Zeilenende
mehrzeiliger Kommentar
//
/* ...
+ - *
%
*/
/
==
<>, !=
<, <=
>, >=
Rechenoperatoren
Modulo (Divisionsrest), Beispiel: $mRest = 20 % 3;
$mRest hat den Inhalt 2, weil 20 / 3 = 6 Rest 2 ergibt
Logische Operatoren
logisches Und
logisches Oder
logisches Nicht
logisches Entweder-Oder
Vergleichsoperatoren:
Gleichheit
Ungleichheit
kleiner, kleiner oder gleich
größer, größer oder gleich
PHP-Funktionen
Erläuterung
date(Format, Zeitangabe)
Formatiert eine Zeitangabe. Beispiele
date("d. M Y")
date("d.m.Y", 1234567890) Sekunden seit 1.1.1970
Gibt einen booleschen Wert zurück, der angibt, ob die Variable
leer ist.
Gibt den abgerundeten Wert einer Fließkommazahl zurück.
Beispiel: floor(1.67) ergibt 1
Gibt einen booleschen Wert zurück, der angibt, ob ein
Ausdruck als Zahl oder ein numerischer String ausgewertet
werden kann.
Gibt einen booleschen Wert zurück, der angibt, ob ein
Ausdruck als String ausgewertet werden kann.
Formatier eine Zahl und gibt sie als String zurück.
Beispiel:
and
or
!
xor
empty(Ausdruck)
floor(float num. Ausdruck)
is_numeric(Ausdruck)
is_string(Ausdruck)
number_format
(Variable, int Dezimale,
string Dezimalzeichen,
string Tausenderzeichen)
pi()
pow(Basis, Exponent)
round(Ausdruck, Stellenzahl)
sqrt(num. Ausdruck)
str_replace(string1,
string2, string3)
PHP
number_format($mZ, 2, ",", ".")
Liefert die Zahl für pi.
Potenziert die Basis mit dem Exponenten
Beispiel: pow(2, 3) ergibt 2 * 2 * 2 = 8
Rundet eine Fließkommazahl auf die angegebene Stellenzahl
Gibt die Quadratwurzel einer Zahl zurück.
Ersetzt alle String1 durch den String2 im String3.
Beispiel: str_replace(",", ".", $mGewicht);
- 1 von 5 -
24.02.2010
Befehlssammlung Informatik
PHP und Formulare
PHP-Kontrollstrukturen
Erläuterung
if (Bedingung)
{ Anweisungsblock
}
if (Bedingung)
{ Anweisungsblock 1
}
else
{ Anweisungsblock 2
}
switch(Variable)
{ case(Bedingung1):
Anweisungsblock 1
break;
case(Bedingung2):
Anweisungsblock 2
break;
...
default:
Anweisungsblock n
}
while(Bedingung/Ausdruck)
{ Anweisungsblock
}
Bedingte Verarbeitung:
Ist die Bedingung wahr, so werden die Befehle im Anweisungsblock ausgeführt.
for (Init Schleifenvariable;
Bedingung; Veränderung)
{ Anweisungsblock
}
Zählerschleife
PHP-Methoden
Erläuterung
echo "Ausgabetext";
print "Ausgabetext";
Ausgabe von Text (Strings). Beispiele:
print "<h2>Ihr BMI beträgt $mBMI </h2>";
echo "Zinsen: " . number_format($mZ, 2);
print_r(Array)
Ausgabe eines Arrays
print_r($_POST)
PHP-Variable
Erläuterung
$mVariablenname
$mVariablenname = Ausdruck;
Variablenname beginnt immer mit $m
Wertzuweisung: Der Wert des Ausdrucks rechts vom
Gleichheitszeichen wird der Variablen links vom
Gleichheitszeichen zugewiesen.
Beispiel:
$mBMI = $mGewicht / ($mGroesse * $mGroesse);
Enthält alle Daten aus methode = "post" (Datenübernahme)
Beispiel:
$_POST
einfache Alternative:
Ist die Bedingung wahr, so wird Anweisungsblock1
ausgeführt, wenn sie nicht erfüllt ist, wird Anweisungsblock2
ausgeführt.
mehrfache Alternative (Fallabfrage)
abweisende (kopfgesteuerte, solange-) Schleife
Solange die Bedingung/der Ausdruck wahr ist, wird der
Anweisungsblock wiederholt.
$mGewicht = $_POST[tfGewicht];
Datentypen
PHP
Boolean (wahr/falsch)
Integer (ganzzahlig)
Fließkommazahl (float, real, double)
Zeichenkette (String)
- 2 von 5 -
24.02.2010
Befehlssammlung Informatik
PHP und Formulare
Typkonvertierung
Ein bedeutender Unterschied zwischen PHP und Sprachen
wie Java liegt darin, dass PHP nicht typisiert ist, d.h. dass
Variablenwerte beliebige Datentypen enthalten können.
 In Anführungszeichen " " oder ' ' eingeschlossene Zeichen
werden als String interpretiert.
 Eine Zahl ohne Punkt wird als Ganzzahl interpretiert.
 Eine Zahl mit Punkt wird als Fließkommazahl interpretiert.
PHP-Session
Hinweise
session_start();
Wenn keine Sitzung besteht, wird eine neue erzeugt,
andernfalls wird die alte Sitzung fortgeführt.
Muss vor der ersten Ausgabe stehen.
Zerstört eine Sitzung
Globale Session-Variable vom Typ Array
session_destroy();
$_SESSION
$_SESSION['kdnr'] = "24001";
echo $_SESSION['kdnr'];
echo '<a href="seite2.php?' .
SID . '">Seite 2</a>';
Datenübernahme in die globale Session-Variable
Ausgabe von Daten aus der globale Session-Variable
Übergabe der SID ohne Cookies
PHP-Zugriff auf MySQL-Datenbanken Erläuterung 1. Lösungsweg: objektorientiert!
$dbVerbindung = new
mysqli($mServer, $mBenutzer,
$mKennwort, $mDatenbank);
@$dbVerbindung = ...
$mdbVerbindung ->close();
$abfrageErgebnis =
$dbVerbindung->query($mSQL);
$abfrageErgebnis ->close();
$aktuellerArtikel =
$abfrageErgebnis->
fetch_object();
echo $aktuellerArtikel->Name;
mysqli_connect_errno()
mysqli_connect_error()
num_rows
Erzeugt ein Verbindungsobjekt, das mit 4 Parametern wird
erstellt wird:
$mServer enthält den Servername (z.B. localhost)
$mBenutzer enthält den Benutzername (z.B. root)
$mKennwort enthält das Benutzerpasswort
$mDatenbank enthält den Datenbankname (z.B. haro)
@ unterdrückt Systemfehlermeldungen
Schließt ein Verbindungsobjekt.
Erstellt eine Ergebnistabelle mit dem Ergebnis der
Datenbankabfrage.
Die Methode query() übergibt dem Verbindungsobjekt die
SQL-Anweisung und empfängt von ihm das Ergebnis.
Schließt eine Ergebnistabelle.
$aktuellerArtikel ist ein Objekt aus der Ergebnistabelle.
Die Methode fetch_objekt() übergibt das nächste Objekt aus
der Ergebnistabelle an $aktuellerArtikel.
Gibt den Wert einer Eigenschaft des Objekts aus.
Name ist der Spaltenname aus der Datenbank. Auf Groß/Kleinschreibung muss geachtet werden.
Funktion, die die Fehlernummer des letzten Aufrufs eines
Verbindungsobjekts mit mysqli zurück gibt.
0 = keine Fehler
Funktion, die den Fehlertext des letzten Aufrufs von
mysqli_connect() zurück gibt.
Eigenschaft des mysqli_result-Objekts, die die Anzahl der
Zeilen des Abfrageergebnisses enthält, Beispiel
if ($mErgebnis->num_rows == 0)
PHP
- 3 von 5 -
24.02.2010
Befehlssammlung Informatik
PHP und Formulare
PHP-Zugriff auf MySQL-Datenbanken
Erläuterung
$server
$user
$pass
$server enthält den Servername (z.B. localhost)
$user enthält den Benutzername (z.B. root)
$pass enthält das Benutzerpasswort
= "localhost";
= "root";
= "";
2. Lösungsweg:
$verbindung = mysql_connect($server,
$user, $pass);
Verbindung zum MySQL-Datenbankserver
aufnehmen
$verbindung = mysql_connect($server,
$user, $pass)
or die ("Meldung");
Falls die Datenbankverbindung fehlschlägt, wird
das Skript nach der Ausgabe der Fehlermeldung
abgebrochen.
mysql_close($verbindung);
Verbindung zum verbundenem MySQL-Server
beenden
Auswahl der Datenbank
mysql_select_db("datenbankname");
Bsp: mysql_select_db("buecherei");
mysql_select_db("datenbankname")
or die ("Meldung");
Schlägt die Aktivierung der Datenbank fehl, wird
das Skript nach der Ausgabe der Fehlermeldung
abgebrochen
$sql = "SQL-Abfrage...";
Es wird nur die Formulierung der SQL-Abfrage
unter $sql gespeichert, aber nicht das Ergebnis!
Die Abfrage wird hier noch nicht ausgeführt!
Bsp:
$sql = "SELECT * FROM ort";
$ergebnis = mysql_query ($sql);
$zeile = mysql_fetch_array($ergebnis);
Ausgabe: echo $zeile[Feldname]
Bsp: echo $zeile[Vorname]
Oder
Ausgabe: echo $zeile[FeldNr]
Bsp: echo $zeile[1]
x
Die Datenbankabfrage wird ausgeführt und die
Ergebnistabelle wird in der Variablen $ergebnis
gespeichert.
Aus der Ergebnistabelle wird ein Datensatz
ermittelt und an die Variable $zeile übergeben
Vorname ist der Spaltenname aus der
Datenbanktabelle. Es wird der Vorname
ausgegeben
1 meint die 2. Spalte aus der Datentabelle. Es
wird der Inhalt vom 2 Datenfeld ausgegeben.
$zeile = mysql_fetch_assoc($ergebnis);
Ausgabe:echo $zeile[Feldname]
Bsp: echo $zeile[Vorname]
$zeile = mysql_fetch_object($ergebnis);
Ausgabe: echo $zeile->Feldname;
Bsp: echo $zeile->Vorname;
mysql_num_rows()
Aus der Ergebnistabelle wird ein Datensatz
ermittelt und an die Variable $zeile übergeben
Vorname ist der Spaltenname aus der
Datenbanktabelle. Es wird der Vorname
ausgegeben.
Die Methode fetch_objekt() übergibt
das nächste Objekt aus der
Ergebnistabelle an $zeile.
Gibt den Wert einer Eigenschaft des
Objekts aus.Vorname ist der Spaltenname aus der Datenbanktabelle. Auf
Groß-/Kleinschreibung muss geachtet
werden.
Liefert die Anzahl der Zeilen des
Abfrageergebnisses
Alternative Lösungen
PHP
- 4 von 5 -
24.02.2010
Befehlssammlung Informatik
PHP und Formulare
Weiterleitung mit meta-Tags
Erläuterung
<meta http-equiv="refresh"
content = "5;
url=http://www.example.com/"
>
Leitet nach 5 Sekunden an http://www.example.com/
weiter.
http://jendryschik.de/wsdev/weiterleitung/
Formularobjekte (XHTML)
Erläuterung
<form
action="bmi.php"
method="post">
Formularobjekte
</form>
<input type="password"
name="pwPasswort"
size="5"
maxlength="10"
/>
<input type="text"
name="tfGewicht"
size="5"
maxlength="5"
value = "" />
<input type="hidden"
name="hiKdnr"
value = "$mKdnr"
size="5"
maxlength="5" />
<input type="radio"
name="rbAnrede"
value = "1"
checked = "checked" />
<input type="checkbox"
name="cbWG1"
value="1" />
<input type="submit"
name=""
value="Abschicken" />
<input type="reset"
name=""
value="Löschen" />
<textarea
name="taNachricht"
cols="50"
rows="10" > Text
</textarea>
Definiert ein Formular
Ruft ein Programm auf dem Server auf.
Legt die Übertragungsmethode für die Formulardaten fest
PHP
Formularende
Eingabefeld für ein Passwort
Name des Eingabefeldes (pw für Passwort)
Sichtbare Größe des Feldes
Maximal einzugebende Zeichen
Eingabefeld für Text
Name des Eingabefeldes (tf für Textfeld)
Text, mit dem das Feld vorbelegt wird
verstecktes Feld
Name des versteckten Feldes (hi für hidden)
Variable, mit der das Feld vorbelegt werden kann
Radiobutton
Name (rb für Radiobutton)
Übermittelter Wert, wenn ausgewählt/angeklickt
Beim Laden bereits vorselektiert
Checkbox
Name (cb für Checkbox)
Übermittelter Wert, wenn ausgewählt/angeklickt
Submit-Button
Aufschrift für den Submit-Button
Reset-Button
Aufschrift für den Reset-Button
Mehrzeiliges Eingabefeld
Name (ta für Textarea)
Anzahl der angezeigten Spalten
Anzahl der angezeigten Zeilen angezeigter Text
- 5 von 5 -
24.02.2010
Herunterladen