mirror of
https://gitlab.com/harald.mueller/aktuelle.kurse.git
synced 2024-10-19 18:05:02 +02:00
442 lines
16 KiB
HTML
442 lines
16 KiB
HTML
<html>
|
||
<head>
|
||
|
||
<title>PHP-Einfach.de - PHP Einführung - if-Anweisungen</title>
|
||
<meta name="Author" content="Andavos">
|
||
<meta name="Publisher" content="Andavos">
|
||
<meta name="Copyright" content="Andavos">
|
||
<link rel="stylesheet" href="css/main.css" tppabs="http://www.php-einfach.de/offline/css/main.css" type="text/css">
|
||
</head>
|
||
<body text="#000000" bgcolor="#DDDDDD" link="#004A95" alink="#004A95" vlink="#525252">
|
||
|
||
<table align="center" height="100%" width="100%" cellspacing="0" border="0" cellpadding="0">
|
||
<tr>
|
||
<td align="center" valign="middle" height="100%" width="100%">
|
||
|
||
<table height="100" width="750" cellspacing="0" border="0" cellpadding="0">
|
||
<tr>
|
||
<td height="100" bgcolor="#FFE09F" width="750"><img src="grafiken/banner_top.jpg" tppabs="http://www.php-einfach.de/offline/grafiken/banner_top.jpg" width="750" height="100" border="0" alt="">
|
||
<a name="oben"></a></td>
|
||
</tr>
|
||
</table>
|
||
|
||
|
||
|
||
|
||
<table height="650" width="750" cellspacing="0" border="0" cellpadding="0">
|
||
<tr>
|
||
<td valign="top" bgcolor="#FFE09F" width="160">
|
||
|
||
<table width="160" cellspacing="0" border="0" cellpadding="0">
|
||
<tr>
|
||
<td height="100" width="5"></td>
|
||
<td class="black" height="100" width="150">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<br><b><center><img src="grafiken/side_navigation.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_navigation.gif" width="150" height="25" border="0" alt=""></center></b>
|
||
<a target="_blank" class="blue" href="http://www.php-einfach.de/index.php"><b>»</b> Startseite</a><br>
|
||
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_news.php"><b>»</b> Newsübersicht</a><br>
|
||
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_email.php"><b>»</b> Kontakt</a><br>
|
||
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_impressum.php"><b>»</b> Impressum</a><br><br>
|
||
|
||
|
||
<center><img src="grafiken/side_community.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_community.gif" width="150" height="25" border="0" alt=""></center>
|
||
<a target="_blank" class="blue" target="_blank" href="http://forum.php-einfach.de/"><b>»</b> Forum</a><br>
|
||
<a target="_blank" class="blue" href="http://www.php-einfach.de/nav_gaestebuch.php"><b>»</b> Gästebuch</a><br><br>
|
||
|
||
|
||
<center><img src="grafiken/side_tutorials.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_tutorials.gif" width="150" height="25" border="0" alt=""></center>
|
||
<a class="blue" href="einf_php.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php.php"><b>»</b> Einführung PHP</a><br>
|
||
|
||
|
||
<a class="blue" href="einf_php_anfang.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_anfang.php"><b>»</b> Anfang</a><br>
|
||
<a class="blue" href="einf_php_erste_schritte.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_erste_schritte.php"><b>»</b> Erste Schritte</a><br>
|
||
<a class="blue" href="einf_php_variablen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_variablen.php"><b>»</b> Variablen</a><br>
|
||
<a class="blue" href="einf_php_if-anweisung.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_if-anweisung.php"><b>»</b> if-Anweisung</a><br>
|
||
<a class="blue" href="einf_php_logische_operatoren.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_logische_operatoren.php"><b>»</b> Log. Operatoren</a><br>
|
||
<a class="blue" href="einf_php_uebung1.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_uebung1.php"><b>»</b> Übung</a><br>
|
||
<a class="blue" href="einf_php_dateien.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_dateien.php"><b>»</b> Dateien</a><br>
|
||
<a class="blue" href="einf_php_schleifen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_schleifen.php"><b>»</b> Schleifen</a><br>
|
||
<a class="blue" href="einf_php_array.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_array.php"><b>»</b> Array</a><br>
|
||
<a class="blue" href="einf_php_dateien2.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_dateien2.php"><b>»</b> Dateien Teil 2</a><br>
|
||
<a class="blue" href="einf_php_datum.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_datum.php"><b>»</b> Datum & Zeit</a><br>
|
||
<a class="blue" href="einf_php_email.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_email.php"><b>»</b> Mail Funktion</a><br>
|
||
<div style="position: relative; left:15;" >
|
||
<a class="blue"href="einf_php_suchen_ersetzen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_suchen_ersetzen.php"><b>»</b> Suchen & Ersetzen</a><br>
|
||
<a class="blue" href="einf_php_nuetz_funktionen.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_nuetz_funktionen.php"><b>»</b> Nützliche Funktionen</a><br>
|
||
</div>
|
||
<a class="blue" href="einf_php_sessions.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_sessions.php"><b>»</b> Sessions</a><br><br>
|
||
|
||
|
||
|
||
<a class="blue" href="einf_mysql.php.htm" tppabs="http://www.php-einfach.de/offline/einf_mysql.php"><b>»</b> Einführung MySQL</a><br>
|
||
|
||
<br>
|
||
<center>
|
||
<a target="_blank" href="http://www.php-einfach.de/nav_verlinkung.php"><img src="grafiken/php-einfach.gif" tppabs="http://www.php-einfach.de/offline/grafiken/php-einfach.gif" width="88" height="31" border="0" alt="PHP-Einfach.de"></a><br><br>
|
||
|
||
<a target="_blank" href="http://www.digicount.de/"><b>Counterdienst:</b></a>
|
||
<a target="_blank" href="http://www.php-einfach.de/nav_digicount.php"><div>
|
||
<img src="grafiken/digicount_livedemo.jpg" tppabs="http://www.php-einfach.de/offline/grafiken/digicount_livedemo.jpg" border="0" alt="Digicount.de"><br>
|
||
<small>Unser werbefreier Counter- und Statistikdienst</small></div>
|
||
|
||
</a>
|
||
</center>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
</td>
|
||
<td height="100" width="5"></td>
|
||
</tr>
|
||
</table>
|
||
|
||
</td>
|
||
<td valign="top" bgcolor="#FFFFFF" width="430">
|
||
|
||
<table width="430" cellspacing="0" border="0" cellpadding="0">
|
||
<tr>
|
||
<td height="100" width="10"></td>
|
||
<td valign="top" class="black" height="100" width="410">
|
||
<br>
|
||
<h4>if-Anweisungen</h4>
|
||
Bisher brachte PHP noch keinen großen Vorteil gegenüber HTML. Dies wird sich jetzt aber mit der <b>if-Anweisung</b> ändern.<br><br>
|
||
|
||
Mit <b>if</b> können wir überprüfen, ob bestimmte Bedingungen erfüllt bzw. nicht erfüllt sind.<br><br>
|
||
|
||
|
||
Das Gerüst für eine <b>if-Anweisung</b> sieht so aus:<br><br>
|
||
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
if(<i>Bedingung</i>)
|
||
{
|
||
<i>Anweisung</i>
|
||
}
|
||
?>
|
||
</pre>
|
||
|
||
</font>
|
||
Die <b>Bedingung</b>, die überprüft werden soll, wird in Klammern direkt nach dem einleitenden <b>if</b> gesetzt.
|
||
Danach folgt in <b>geschwungenen</b> Klammern die auszuführende <b>Anweisung</b>, wenn die Bedingung erfüllt (wahr/<font color="#00DF00">true</font>) ist. <br><br>
|
||
|
||
|
||
Schauen wir uns einmal ein kleines Beispiel an:<br><br>
|
||
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
$user = "Nils";
|
||
|
||
if($user == "Nils")
|
||
{
|
||
echo "Hallo Nils";
|
||
}
|
||
?>
|
||
</pre>
|
||
</font>
|
||
Die <b>IF-Anweisung</b> überprüft, ob die Variable <b>$user</b> als Inhalt <b>Nils</b> hat. Trifft dies zu, so gibt die Bedingung wahr (<font color="#00DF00">true</font>) zurück und als Ausgabe erhalten wir: <i>Hallo Nils</i>.<br> <br>
|
||
|
||
Zu beachten ist hier, dass zwei <b>Ist-Gleich</b> Zeichen benutzt werden. Mit nur einem Gleichheitszeichen würde diese <b>if-Anweisung</b> nicht funktionieren, denn dort würde der Variable den Wert <i>Nils</i> zugewiesen werden.<br>
|
||
Außerdem darf <b>kein</b> Semikolon (;) hinter der <b>if-Anweisung</b> stehen.<br><br>
|
||
|
||
Wenn die Variable <i>$user</i> <b>nicht</b> den Inhalt <b>Nils</b> hätte, so würde <b>if</b> <font color="#DE0000">false</font> (falsch) zurückgeben und wir würden keine Ausgabe erhalten.<br><br>
|
||
|
||
Möchten wir aber auch eine Ausgabe erhalten wenn die Variable <i>$user</i> <b>nicht</b> den <i>Inhalt</i> <b>Nils</b> hat, so benötigen wir die <b>else</b>-Anweisung.<br><br>
|
||
|
||
Das Grundgerüst sieht dafür so aus:<br>
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
if(<i>Bedingung</i>)
|
||
{
|
||
<i>Anweisung</i>
|
||
}
|
||
else
|
||
{
|
||
<i>Anweisung</i>
|
||
}
|
||
?>
|
||
</pre>
|
||
</font>
|
||
Das <b>else</b> tritt immer dann ein, wenn wir <b>false</b> (falsch) erhalten.<br><br>
|
||
|
||
|
||
Zum besseren Verständnis hier ein kleines Beispiel:<br><br>
|
||
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
$user = "Klaus";
|
||
|
||
if($user=="Nils")
|
||
{
|
||
echo "Hallo Nils";
|
||
}
|
||
else
|
||
{
|
||
echo "Du bist nicht Nils!";
|
||
}
|
||
?>
|
||
</pre>
|
||
</font>
|
||
|
||
Hat die Variable <b>$user</b> den Inhalt <b>Nils</b>, so erhalten wir als Ausgabe <i>Hallo Nils</i>, bei jedem <b>anderen</b> Inhalt erhalten wir als Ausgabe <i>Du bist nicht Nils!</i>.<br><br>
|
||
|
||
Hiermit können wir schon eine einfache, aber dennoch sichere Passwortabfrage erstellen.<br>
|
||
<br>
|
||
|
||
Als erstes benötigen wir wieder ein Formular:<br>
|
||
<font color="#606060">
|
||
<pre>
|
||
<form action="seite2.php" method="post">
|
||
<input type="Password" name="passwort">
|
||
<input type="Submit" value="Absenden">
|
||
</form>
|
||
</pre>
|
||
</font>
|
||
In diesem Formular geben wir dann das Passwort ein. Beim Klick auf "Absenden", wird die Seite <b>seite2.php</b> aufgerufen und gleichzeitig an diese das Passwort übergeben.<br>
|
||
- Genau wie es im Abschnitt Variablen unter Variablen übergeben beschrieben wurde.<br><br>
|
||
|
||
|
||
<b>seite2.php</b> muss dann so aussehen:<br>
|
||
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
$passwort = $_POST["passwort"];
|
||
|
||
if($passwort=="geheim")
|
||
{
|
||
echo "Herzlich Willkommen im internen Bereich";
|
||
}
|
||
else
|
||
{
|
||
echo "Das Passwort ist leider falsch";
|
||
}
|
||
?>
|
||
</pre>
|
||
</font>
|
||
|
||
Mit <b>$passwort = $_POST["passwort"];</b> weisen wir der Variable den Inhalt des Passwortfeldes im Formular zu.<br>
|
||
Mit der <b>if-Anweisung</b> wird nun abgefragt, ob die Variable <b>$passwort</b> das Wort <b>geheim</b> als Inhalt hat,
|
||
also ob im Formular das Wort <b>geheim</b> auch eingegeben wurde.<br><br>
|
||
Bei richtiger Eingabe, kommt man in den internen (Passwortgeschützen) Bereich. <br>
|
||
Eine falsche Eingabe bewirkt die Ausgabe <i>Das Passwort ist leider falsch</i>.<br><br>
|
||
|
||
<hr noshade size="1">
|
||
<br>
|
||
|
||
Wir können natürlich auch <b>if</b>-Anweisungen <b>innerhalb</b> einer <b>if</b>-Anweisung erstellen. (verschachteln)<br><br>
|
||
|
||
|
||
Dies sieht dann z.B. so aus:<br>
|
||
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
$vorname = "Nils";
|
||
$nachname = "Reimers";
|
||
|
||
|
||
if($vorname=="Nils")
|
||
{
|
||
echo "Hallo Nils ";
|
||
|
||
if($nachname=="Reimers")
|
||
{
|
||
echo "Reimers";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
echo "Du bist nicht Nils";
|
||
}
|
||
?>
|
||
</pre>
|
||
</font>
|
||
|
||
Zuerst wird überprüft, ob die Variable <b>$vorname</b> den Inhalt <b>Nils</b> hat. Trifft dies zu, so wird <i>Hallo Nils</i> ausgegeben.<br>
|
||
Danach wird innerhalb der if-Anweisung mit einer weiteren if-Anweisung überprüft, ob die Variable <b>$nachname</b> den Inhalt <b>Reimers</b> hat.
|
||
Trifft dies ebenfalls zu, wird auch noch <i>Reimers</i> ausgegeben.<br><br>
|
||
|
||
Wenn die Variable <b>$vorname</b> <b>nicht</b> den Inhalt <i>Nils</i> hat, so wird <i>Du bist nicht Nils</i> ausgegeben.<br>
|
||
Es ist dann auch egal, ob <b>$nachname</b> <i>Reimers</i> ist oder nicht.<br><br>
|
||
|
||
Genauso kann eine zweite <b>if-Anweisung</b> auch im <b>else</b> Teil stehen:<br>
|
||
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
$user = "Nils";
|
||
|
||
if($user=="Nils")
|
||
{
|
||
echo "Hallo Nils";
|
||
}
|
||
else
|
||
{
|
||
if($user=="Reimers")
|
||
{
|
||
echo "Hallo Herr Reimers";
|
||
}
|
||
else
|
||
{
|
||
echo "Du bist nicht Nils Reimers";
|
||
}
|
||
}
|
||
?>
|
||
</pre>
|
||
</font>
|
||
|
||
Wenn die Variable <b>$user</b> den Inhalt <i>Nils</i> hat, wird <i>Hallo Nils</i> ausgegeben. <br> <br>
|
||
|
||
Hat sie diesen Inhalt nicht, wird überprüft, ob der Inhalt <i>Reimers</i> ist. Hat sie diesen Inhalt, so wird <i>Hallo Herr Reimers</i> ausgegeben.<br><br>
|
||
|
||
Falls die Variable <b>$user</b> weder den Inhalt <i>Nils</i>, noch den Inhalt <i>Reimers</i> hat, dann wird <i>Du bist nicht Nils Reimers</i> ausgegeben.<br><br>
|
||
|
||
Des weiteren könnten man dies auch per <b>else if</b> lösen. Dies ist eine weitere if-Anweisungen, wenn die vorherige nicht Zutrifft:
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
$user = "Nils";
|
||
|
||
if($user=="Nils")
|
||
{
|
||
echo "Hallo Nils";
|
||
}
|
||
else if($user == "Reimers")
|
||
{
|
||
echo "Hallo Herr Reimers";
|
||
}
|
||
else if($user == "Meier")
|
||
{
|
||
echo "Hallo Herr Meier";
|
||
}
|
||
else
|
||
{
|
||
echo "Du bist weder Herr Reimers noch Herr Meier";
|
||
}
|
||
|
||
?>
|
||
</pre>
|
||
</font>
|
||
|
||
Man kann auch mit einer <b>if-Anweisung</b> abfragen, ob etwas <b>nicht erfüllt</b> ist.<br>
|
||
Dies erreichen wir mit <b>!=</b> (ungleich).<br><br>
|
||
|
||
Ein kleines Beispiel hierfür: <br>
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
$user = "Nils";
|
||
|
||
if($user!="Nils")
|
||
{
|
||
echo "Du bist nicht Nils";
|
||
}
|
||
else
|
||
{
|
||
echo "Hallo Nils";
|
||
}
|
||
?>
|
||
</pre>
|
||
</font>
|
||
|
||
Wenn die Variable <b>$user</b> einen anderen (ungleichen) Inhalt als <i>Nils</i> hat, so wird <i>Du bist nicht Nils</i> ausgegeben.<br>
|
||
Wenn sie aber doch diesen Inhalt (<i>Nils</i>) hat, so wird <i>Hallo Nils</i> ausgegeben.<br><br>
|
||
|
||
Zwar könnte man hierfür auch die Abfrage <b>==</b> (Ist-Gleich) benutzen, aber wenn man überprüfen möchte, ob überhaupt etwas im Formular eingegeben wurde, ist es besser, <b>!=</b> zu benutzen.<br><br>
|
||
|
||
Dies würde dann einfach so aussehen:
|
||
|
||
<font color="#606060">
|
||
<pre>
|
||
<?php
|
||
$user = $_POST["user"];
|
||
|
||
if($user!="")
|
||
{
|
||
echo "Herzlich Willkommen $user";
|
||
}
|
||
else
|
||
{
|
||
echo "Das Feld User wurde nicht ausgef<65>llt";
|
||
}
|
||
?>
|
||
</pre>
|
||
</font>
|
||
|
||
Als erstes fragen wir die übertragenen Daten wieder ab. <br>
|
||
Wenn <b>$user</b> ungleich "" (leer) ist, erhalten wir <i>Herzlich Willkommen $user</i>. <br>
|
||
Wurde das Eingabefeld nicht ausgefüllt, erhalten wir <i>Das Feld User wurde nicht ausgefüllt. </i><br><br>
|
||
|
||
|
||
Bei <b>if-Anweisungen</b> ist unbedingt darauf zu achten, dass <b>alle</b> geschwungenen Klammern wieder geschlossen werden, da sonst das Script nicht funktioniert.<br><br>
|
||
|
||
|
||
Manchmal möchte man auch mehrere Bedingungen überprüfen, dafür brauchen wir <a href="einf_php_logische_operatoren.php.htm" tppabs="http://www.php-einfach.de/offline/einf_php_logische_operatoren.php">logische Operatoren</a> <br> <br>
|
||
|
||
|
||
<a href="http://www.php-einfach.de/nav_impressum.php">Autor Andavos</a>
|
||
|
||
|
||
<div align="center"><a href="#oben">Nach oben</a></div>
|
||
</td>
|
||
<td height="100" width="10"></td>
|
||
</tr>
|
||
</table>
|
||
|
||
</td>
|
||
<td valign="top" bgcolor="#FFE09F" width="160">
|
||
|
||
<table width="160" cellspacing="0" border="0" cellpadding="0">
|
||
<tr>
|
||
<td height="100" width="5"></td>
|
||
<td valign="top" class="black2" height="100" width="150">
|
||
|
||
<br><b><center><img src="grafiken/side_news.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_news.gif" width="150" height="25" border="0" alt=""></center></b>
|
||
|
||
|
||
<a target="_blank" href="http://www.php-einfach.de/nav_news.php">News</a>
|
||
<br><br>
|
||
|
||
<b><center><img src="grafiken/side_forum.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_forum.gif" width="150" height="25" border="0" alt=""></center></b>
|
||
<a target="_blank" href="http://forum.php-einfach.de/">Forum</a>
|
||
<br><br>
|
||
|
||
<b><center><img src="grafiken/side_newsletter.gif" tppabs="http://www.php-einfach.de/offline/grafiken/side_newsletter.gif" width="150" height="25" border="0" alt="Newsletter"></center></b>
|
||
|
||
<form target="_blank" method="post" action="http://www.php-einfach.de/clanletter/save.php">
|
||
|
||
|
||
<br> <br>
|
||
<div align="center">© PHP-Einfach.de 2003 - 2007 </div>
|
||
</td>
|
||
<td height="100" width="5"></td>
|
||
</tr>
|
||
</table>
|
||
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
|
||
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
|
||
|
||
|
||
|
||
</body>
|
||
</html> |