Einführung in PHP - isabel

Werbung
Einführung in PHP
Semester: IV
HTWM
Hochschule für Technik und
Wirtschaft Mittweida –
Univerity of applied
sciences
Einführung in
PHP
Mitschrift von: Isabel Drost, if99wp1
Seite 1 von 6
Einführung in PHP
Semester: IV
1.
EINFÜHRUNG IN PHP ............................................................................................................................... 3
1.1. DEFINITION VON PHP.................................................................................................................................... 3
1.2. PHP-RESSOURCHEN ................................................................................................................................. 3
1.3. GRUNDLAGEN ............................................................................................................................................... 3
1.3.1. Allgemeine Syntax ................................................................................................................................. 3
1.3.2. Datentypen............................................................................................................................................. 3
1.3.3. Variablen ............................................................................................................................................... 4
1.3.4. Variablen aus HTML-Formularen ........................................................................................................ 4
1.4. KONTROLLSTRUKTUREN ............................................................................................................................... 4
1.4.1 if.............................................................................................................................................................. 4
1.4.2 while/ do ... while.................................................................................................................................... 4
1.4.3 for ........................................................................................................................................................... 4
1.4.4. include(), require() ist möglich.............................................................................................................. 4
1.4.5. Funktionen wie in Perl .......................................................................................................................... 4
1.4.6. Arrays .................................................................................................................................................... 5
2.
PHP UND MYSQL........................................................................................................................................ 5
Mitschrift von: Isabel Drost, if99wp1
Seite 2 von 6
Einführung in PHP
Semester: IV
1. Einführung in PHP
1.1. Definition von PHP
•
•
•
•
•
•
•
•
•
steht für Hypertext Preprozessor
Alternative zu Perl und anderen CGI – Sprachen
PHP-Scripts können in HTML-Dateien eingebettet werden
Server führt zuerst die PHP-Anweisungen aus und schickt die so produzierte Datei zurück an den Client
Können HTML-Dateien on the fly erzeugen
Aktualisierung von Dateien/Datn auf dem Server, verschicken von Mails, Grafiken on –the-fly erzeugen
PHP kann in HTML eingebettet sein, muß nicht im cgi-bin liegen, um ausgeführt zu werden
weitreichende Bibliothek mit APIs und Funktionen
Vorteile von PHP4: verbessertes Sessionmanagment, bessere Implementierung der OOP, Performanceverbesserung
Kennzeichnung von php-Dateien:
php für php4 und php3 für Version 3
1.2. PHP-Ressourchen
•
•
•
•
•
http://www.php.net (Distris ...)
http://www.zend.com (Anleitungen, Zusatzsoftware, Distris)
http://www.php-builder.com (Tutorials)
http://www.php-center.de (Portalseite)
http://www.dynamicwebpages.de (Tutorials, Links, Anleitungen, Handbuch)
1.3. Grundlagen
<html>
<head>
<title>It's time for php</title>
</head>
<body>
<?php>
echo "Die Zeit ist jetzt: ".time();
?>
</body>
</html>
1.3.1. Allgemeine Syntax
• spezielle Tags, um den Code zu markieren:
- <?php ...?>
XML-conform
<? ...?>
Kurzform
<script language="PHP"></script>
<% ... %>
1.3.2. Datentypen
•
•
•
•
integer, double, string, boolean, array, objekte
Arrays entsprechen Perllisten
php weist Typ automatisch zu entsprechend der ersten Verwendung
'...' ... string, maximale Stringlänge entspricht 32K
Mitschrift von: Isabel Drost, if99wp1
Seite 3 von 6
Einführung in PHP
Semester: IV
•
Objekte:
class myClass
{
function myFunction($p)
{
echo $p;
}
}
$var=new myClass;
$var->myFunction(5);
•
undefiniert/ NULL/ 0= false, alles andere ist true
1.3.3. Variablen
•
•
•
•
immer ein $-Zeichen vor den Variablen
Standardmäßig sind alle Variablen global (auch wenn sie via include eingebunden wurden)
in benutzerdef. Funkt. nur lokal gültig
viele Vordefinierte Variablen, mittels <? phpinfo(); ?> auflistbar
- http_user_agent ...
Art von ClientRechner
- http_referer
...
Wo kommt der User her?
- php_self
...
welches Script bin ich?
- request_method ...
Anfragemethode
- query_string
...
... ;-)
- https://www.htwm.de/geissler/intranet/php/php_beispiele.php3
1.3.4. Variablen aus HTML-Formularen
•
•
name-wert –Struktur kann genutzt werden: php erzeugt automatisch $[Feldname] - Variablen
aus einem html- Formular kann man komplette Arrays von Daten erhalten, z.b. bei einem select – Tag, ich
erhalte also das array $[selectname] (<select multiple name=$farben[ ]>)
1.4. Kontrollstrukturen
1.4.1 if
•
mehr als eine Anweisung in Klammern, bei nur einer können sie auch alleine stehen
1.4.2 while/ do ... while
1.4.3 for
•
•
folgendes ist auch möglich: for($n=4;--$n;$n){}
auch break und continue sind ebenfalls möglich
1.4.4. include(), require() ist möglich
•
•
•
weiteren php-code einbinden
include geht auch in Schleifen, require geht nur einmalig im Code
z.B. zum günstigen Zusammensetzen von Html – Seiten (head, footer, background sind meist im Sinne einer
corporate identity ähnlich): include("mein_fuss.htm");
1.4.5. Funktionen wie in Perl
Mitschrift von: Isabel Drost, if99wp1
Seite 4 von 6
Einführung in PHP
Semester: IV
1.4.6. Arrays
•
•
•
•
numerisch indizierbar
- Zuweisung einfach: $<arrayname>[]='rot';
- Zuweisung genau: $<arrayname>[0]='rot';
Elementanzahl via count($<arrayname>);
assoziative arrays ebenfalls möglich ($<arrayname>["<Indexname>"])
Durchlaufen in einer Schleife:
while(list($<schluessel>, $<inhalt>)=each($<arrayname>))
{
echo ...
}
in PHP basieren arrays auf einem internen Zeiger, man kann diesen verfolgen, um herauszufinden, auf
welchem Element ich stehe
Funktionen dazu:
- each( )
benutzt den Namen eines Arrays als Argument, gibt Schlüssel und Wert des aktuellen
Elements zurück, bewegt Schlüssel weiter
- next( )
- prev( )
- array_walk( )
ermöglichen es mir, das array von vorn nach hinten zu durchlaufen
2. PHP und MySQL
•
•
verschiedene Fkt. zur Kommunikation mit einem SQL-Server siehe auch Script
Queries haben kein Semikolon! (Wird automatisch ergänzt.)
•
Verbindung mit einem solchen Server:
$server="wdb.htwm.de";
$nutzer="idrost";
$passw="araxajay";
$link_id=mysql_connect($server, $nutzer, $passw);
echo "Verbindungskennung ist: ".$link_id;
•
Das Erstellen einer DB
$create_id=mysql_create_db("<database>");
•
PHP – Datenbankabfragen
int mysql_db_query (string Datenbank, string Anweisung [,int Verbindungskennung]);
int mysql _query(string Anweisungen [, int Verbindungskennung]);
- Verbindungskennung optional, sonst standardmäßig die aktuell offene Verbindung
•
DB auswählen
$select=mysql_select_db("idrost");
$sql="CREATE TABLE fotos
( num INTEGER NOT NULL PRIMARY KEY,
aufnahme_datum DATE,
beschreibung VARCHAR (200)
)";
mysql_query($sql);
•
Fehlerbehandlung
Um an evtl. auftretende Fehlermeldungen zu kommen:
echo "Fehler: ".mysql_errno( )."; Fehlerbeschreibung: ".mysql_error( );
function error_report()
{ echo ...;}
Bei INSERT, UPDATE, DELETE ist das Ergebnis der query-Fkt. immer ein Integerwert, wobei positiv= Erfolg,
sonst nicht.
Mitschrift von: Isabel Drost, if99wp1
Seite 5 von 6
Einführung in PHP
Semester: IV
•
Herausholen von Daten aus der DB:
$mysql_query(<select string>);
while($row=mysql_fetch_array($result)
{
echo "Daten: ".$row[<Spaltenname>];
}
•
mysql_close(); zum Schließen der Datenbank
Mitschrift von: Isabel Drost, if99wp1
Seite 6 von 6
Herunterladen