(0)
Artikel
bewerten
(100% positiv)
(4)

PHP Anfänger

Grundlagen für PHP-Anfänger

was ist php? / wie fange ich an / was brauche ich
mit PHP kannst du Webseiten machen, die z.B. selbstständig Daten am Server speichern, wie ein Gästebuch, Foren, etc.
Der Code wird direkt vom Server ausgeführt, d.h. im Quelltext des Browsers kann man nicht sehen,
was eigentlich hinter der Seite steckt!
bevor du einen PHP Code in einer html-Datei ausführen kannst,
mußt du die Rechte zum Ausführen mit deinem FTP-Programm ändern
mit dem FTP-Programm auf die html Datei gehen und chmod auswählen!
standardmässig stehen die Dateien auf 644, für PHP brauchst du mindestens 755,
am Besten gleich 777!
nicht jeder Provider unterstützt PHP! wenn du z.B einen gratis Webspace hast, kannst du davon ausgehen, daß PHP nicht funktionieren wird!
den PHP Code kannst du in jede beliebige html- Datei schreiben (innerhalb von <?php und ?>, damit der Browser den Code ausführt)  



Text ausgeben (in html einen PHP-Text ausgeben)
versuch mal folgendes:
mach ein leeres Dokument (Textdatei mit .php -Endung)und füge folgenden Inhalt ein:

-------------------------------------------------------
<?php
echo hallo;
?>
-------------------------------------------------------

lade die Datei mit einem FTP-Programm auf deinen Provider,
wenn du die html-Datei im Internet ausführst schreibt sie folgendes:
hallo

dies ist gleichzeitig auch die Kontrolle ob PHP auf deinem Server funktioniert!
wenn dies funktionert, kannst du weiter machen!

wenn du eine leere Anzeige bekommst und im Quelltext, nur <?php echo hallo; ?> steht, kann
dein Provider kein PHP!



Include Befehl (den Inhalt einer Datei in die Datei einfügen)
Beispiel du hast eine html-Datei und willst für jede Datei das selbe Menü verwenden:
dann schreibst du in jede Datei, an der Stelle an der das Menü kommen sollte:
<?php @include(menu.txt); ?>

deine Datei könnte dann so aussehen:

<!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN>
<html>
<head>
<title>meine Seite</title>
</head>
<body>
<?php @include(menu.txt); ?>
</body>
</html>

das Menü speicherst du dann in menu.txt ab!
z.B.:
<a href=seite1.htm target=_blank title=Seite1>1ter Link</a>
<a href=seite2.htm target=_blank title=Seite2>2ter Link</a>

wenn die Seite dann geladen wird, sieht sie so aus:

<!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN>
<html>
<head>
<title>meine Seite</title>
</head>
<body>
<a href=seite1.htm target=_blank title=Seite1>1ter Link</a>
<a href=seite2.htm target=_blank title=Seite2>2ter Link</a>
</body>
</html>

Tipp: wenn du in der Datei die du einfügst auch einen PHP-Code auführen willst,
muß die Datei eine .php Endung haben und der Code wiederum zwischen <? und ?>
stehen! Der Code geht dann natlos in die Datei mit dem Include-Befehl über!  



For Schleife (einen bestimmten Code mehrfach ausführen)
<?php
for ($c = 0; $c < 3; $c++)
{
echo $c, hallo;
}
?>

Ergebnis:
0hallo1hallo2hallo

$c = 0 ... der Anfangswert der Variable c
$c < 3 ... die Schleife so lange durchlaufen, so lange $c kleiner 3 ist!
(wenn die Variable 3 ist, ist sie nicht mehr kleiner, daher hört die Schleife bei 2 auf)
$c++ ... bei jedem Schleifendurchgang die Variable c um 1 erhöhen
echo $c, hallo; bedeutet den Wert $c anzeigen (beim jeweiligen Durchgang) und hallo dazu schreiben  



Variable setzen (einer Variable einen Wert zuweisen)
<?php
$var = 1;
echo $var;
?>

Wenn du die Datei ausführst schreibt sie 1!

das Ganze geht auch mit Text:
<?php
$var = hallo;
echo $var;
?>
im HTML-Code erscheint jetzt natürlich hallo!  



Datei schreiben
um bestimmte Variablen in eine Datei zu schreiben:

$PfadzurDatei = datei.txt;
$wassollichschreiben = hallo;
$datei = fopen($PfadzurDatei, w+);
fwrite($datei, $wassollichschreiben);
fclose($datei);

mit diesen Zeilen erzeugst und schreibst du in die Datei datei.txt hallo rein!

mit w+
wird der Inhalt der Datei datei.txt komplett überschrieben!
willst du einen Text zur Datei anhängen, mußt du a+ verwenden!

w+ und a+ erzeugen die Datei, wenn sie nicht existiert!  



Datei lesen
um den Inhalt einer Datei zu lesen:

$PfadzurDatei = datei.txt;
$datei = fopen($PfadzurDatei,r+) ;
rewind();
$auszulesenderInhalt = fread($datei,filesize($PfadzurDatei));
fclose();

dieser Code ließt den Inhalt von datei.txt und schreibt ihn in die Variable  



Email-funktion in PHP
die Funktion mail ist so aufgebaut:
mail(Empfängeremail, Betreff, Nachricht, From: Absender <Absenderemail>);


ein Beispiel:
<?php
$text = hallo;
$name = Hans;
$emailtext = $name schreibt dir:
$text;
$Betreff = PHP Emailtest;
$emailAbsender = kontakt@libe.net;
$emailan = kontakt@libe.net;
mail($emailan, $Betreff, $emailtext, From: $name <$emailAbsender>);
?>


durch einen kleien Zusatz ist es auch möglich html-Mails zu verschicken, der Aufbau sieht dann so aus:
<?php
$extra = From: $sender <$sendermail>
;
$extra .= Content-Type: text/html

Content-Transfer-Encoding: 8bit
;
mail($empfaenger, $betreff, $text, $extra);
?>

der Text muß dann komplett in html formatiert werden!  
Formular (die Daten eines Formulares an PHP übergeben)
HTML Code für ein Formular:

<form name=data action=so.php method=post>
<TEXTAREA NAME=FILEDATA ROWS=25 COLS=120 WRAP=OFF>TEXT vorher</TEXTAREA>
<INPUT TYPE=HIDDEN NAME=DIR VALUE=<? echo $Variable1; ?>>
<INPUT TYPE=TEXT SIZE=70 MAXLENGTH=255 NAME=kleinerTEXT VALUE=Vorgabe kleiner TEXT>
<INPUT TYPE=RESET VALUE=RESET>
<INPUT TYPE=SUBMIT VALUE=submit>

dies Erzeugt ein Formular, welches die Datei so.php startet und dessen Variablen, dann in so.php verfügbar sind

Erklärung:
<TEXTAREA NAME=FILEDATA ROWS=25 COLS=120 WRAP=OFF>TEXT vorher</TEXTAREA>
ist ein Textfeld mit 25 Zeilen und jeweils 120 Buchstaben pro Zeile
in so.php steht der eingegeben Inhalt als Variable FILEDATA zur Verfügung

<INPUT TYPE=HIDDEN NAME=VAR VALUE=<? echo $Variable1; ?>>
schickt die $Variable1 weiter (als $VAR) nach so.php ohne sie im Formular anzuzeigen

<INPUT TYPE=TEXT SIZE=70 MAXLENGTH=255 NAME=kleinerTEXT VALUE=Vorgabe kleiner TEXT>
ist das Selbe wie ein Textfeld nur 1zeilig! ist in so.php als Varialbe TEXT zur Verfügung

<INPUT TYPE=RESET VALUE=RESET>
um die Eingabe rückgängig zu machen

<INPUT TYPE=SUBMIT VALUE=submit>
um die Daten abzuschicken


in so.php könnte z.B. folgendes stehen:

<?php
echo $FILEDATA;
echo $VAR;
echo $TEXT;
?>

so.php würde dann den Inhalt des Formulares einfach mal anzeigen





If empty  (überprüfe ob eine Variable schon gesetzt ist)
Um zu überprüfen ob eine Variable schon gesetzt ist kannst du folgenden Code verwenden:

if (!empty($q))
{
echo hallo;
}

wenn die Variable q nicht gesetzt ist schreibe hallo

if (empty($q))
{
echo hallo;
}

wenn die Variable q gesetzt ist schreibe hallo  



Rechte einer Datei ändern
um einer Datei alle Lese, Schreib, Ausführrechte zu geben kannst du folgendes verwenden:

$datei = datei.htm;
chmod ($datei, 0777);

somit werden in datei.htm die PHP Passagen <? ... ?> ausgeführt
die Datei kann auch von PHP verändert und gelesen werden

letzte Änderung dieses Artikels: 30.07.2012 09:27



Feedback: