|
|
|
| Autor |
Nachricht |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
17.10.2004, 18:15 |
|
Php-Lernen Weblog
Ich bin gerade auf eine sehr tolle Idee gekommen, find ich jedenfalls. Vor drei Tagen habe ich begonnen Php zu erlernen und nun werde ich hier immer berichten, was ich heute gelernt habe und welche Scripts ich geschrieben habe.
15.Oktober.2004
Zusammen mit dem Knowware Heft "Php für Einsteiger" ist es mir gelungen erste Schritte dieser Programmiersprache zu verstehen. Ich habe Namen mit Variablen ausgegeben und das Datum dynamisch erzeugt. Außerdem habe ich kurz versucht ein wenig mit Php zu rechnen, was auch halbwegs funktionierte.
| Code: |
<?php
$tag=array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
$tagzahl=date("w");
echo "Heute ist $tag[$tagzahl].";
?> |
16.Oktober.2004
Nach längeren Aufenthalten in meiner Mailbox und etlichen Foren habe ich mich wieder dem Programmieren zugewandt. Nun ging es endlich wirklich los - mein erstes Formular! Leider noch etwas holprig, aber mit der Zeit wurde es schon. Mal funktionierte es, mal halt nicht. Hier einer meiner seltsamen Formularsversuche:
| Code: |
<form action="<?php echo $PHP_SELF;?>" method="post">
Anrede: <input type="radio" name="Anrede" value="m"> Herr
<input type="radio" name="anrede" value="w"> Frau<br>
Ihr Name: <input type="text" name="name"><br>
Wohnort: <select size="1" name="wohnort">
<option>Wien</option>
<option>Graz</option>
<option>Salzburg</option>
<option>Kärnten</option>
<option>Berlin</option>
</select>
<input type="submit" name="senden" value="Senden">
<p>
<?php
if (isset($anrede) && isset($name) && isset($wohnort) && $name != "" && $wohnort != "") {
if ($anrede=="m") {
echo "Hallo Herr ";
}
else {
echo "Hallo Frau ";
}
echo "<b>$name</b>, herzlich willkommen!\n";
echo "Sie wohnen in $wohnort";
}
else {
if (isset($senden)) {
echo "Bitte füllen Sie alle Felder aus!";
}
}
?></p> |
17.Oktober.2004
Einfache Formulare sind kein Problem mehr für mich. Jetzt geht es darum, selber etwas kleines zu coden. Ich habe mich entschlossen einen Minitest zu programmieren. Dabei verwendete ich die bereits erlernten Möglichkeiten (Variablen,echo,if,elseif,else,isset). Schnell bin ich darauf gekommen, dass es gar nicht so schwer ist und man sogar schon viele Sachen mit relativ wenig Wissen/Können lösen kann. Nach etwa 20 Minuten war es getan. Mein erstes Script ganz ohne Hilfe des Buches oder dem Internet :]
| Code: |
<h2>Internet-Check</h2>
<form action="versuch.php" method="post">
<b>Was bedeutet die Abkürzung www?</b><br>
<input type="radio" name="www" value="falsch1"> Whom we world
<input type="radio" name="www" value="richtig"> World wide web
<input type="radio" name="www" value="falsch2"> World web wonder
<br><br>
<b>Wie heißt die weltweit erfolgreichste Suchmaschine?</b><br>
<input type="radio" name="suchmaschine" value="richtig"> Google
<input type="radio" name="suchmaschine" value="falsch1"> Yahoo
<input type="radio" name="suchmaschine" value="falsch2"> Msn
<br><br>
<b>Was ist kein Internetbrowser?</b><br>
<input type="radio" name="browser" value="falsch1"> Internet explorer
<input type="radio" name="browser" value="falsch2"> Mozilla
<input type="radio" name="browser" value="richtig"> Quento
<br><br>
<b>Welcher Begriff hat nicht direkt etwas mit Suchmaschinen zu tun?</b><br>
<input type="radio" name="begriff" value="falsch1"> Pagerank
<input type="radio" name="begriff" value="falsch2"> Algorithmus
<input type="radio" name="begriff" value="richtig"> Webhosting
<br><br>
<b>Welches Domainkürzel steht für schweizer Websites?</b><br>
<input type="radio" name="schweiz" value="falsch1"> he
<input type="radio" name="schweiz" value="richtig"> ch
<input type="radio" name="schweiz" value="falsch2"> sz
<br><br>
<input type="submit" name="senden" value="Bewertung starten">
<br><br>
<?php
if (isset($www) && isset($suchmaschine) && isset($browser) && isset($begriff) && isset($schweiz)) {
if ($www=="richtig") {
$wwwrechnung="3";
}
else {
$wwwrechnung="0";
}
if ($suchmaschine=="richtig") {
$suchmaschinerechnung="3";
}
else {
$suchmaschinerechnung="0";
}
if ($browser=="richtig") {
$browserrechnung="3";
}
else {
$browserrechnung="0";
}
if ($begriff=="richtig") {
$begriffrechnung="3";
}
else {
$begriffrechnung="0";
}
if ($schweiz=="richtig") {
$schweizrechnung="3";
}
else {
$schweizrechnung="0";
}
$ende=$wwwrechnung+$suchmaschinerechnung+$browserrechnung+$begriffrechnung+$schweizrechnung;
echo "<b>Erreichte Punkte: $ende von 15</b><br>";
if ($ende=="15") {
echo "Du bist wirklich ein wahrer Meister in Sachen Internet. Begriffe wie Pagerank, Domains und Webdesign sind für dich längst keine Fremdwörter mehr. Eventuell besitzt du schon eine eigene Website oder bist gerade dabei eine zu basteln.";
}
elseif ($ende=="12") {
echo "Für dich ist das Internet schon relativ interessant geworden. Du verwendest es um an Informationen zu diversen Themen zu gelangen oder ab und zu Mails zu verschicken.";
}
else {
echo "Du bist noch ein blutiger Anfänger wenn es ums Internet geht. Lass dir die grundlegenden Begriffe und Funktionen doch einmal von jemandem erklären oder besorge dir ein Buch für Internetstarter.";
}
}
else {
if (isset($senden)) {
echo "Bitte versuche alle Fragen zu beantworten!";
}
}
?> |
|
Zuletzt bearbeitet von Julian Ulrich am 17.12.2004, 20:57, insgesamt 2-mal bearbeitet |
|
|
 |
|
|
 |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
18.10.2004, 10:03 |
|
18.Oktober.2004
Soeben habe ich einen einfachen Passwortschutz geschrieben. Nun schaue ich mir die switch Anweisung und die while Schleifen an. Also gleich mal so einen Schutz mit switch programmieren.
| Code: |
<form action="pass.php" method="post">
<input type="text" name="pw">
<input type="submit" value="Abschicken" name="senden">
<?php
if (isset($pw)) {
if ($pw=="hallo") {
header ("Location: toll.php");
}
elseif ($pw=="hiho") {
header ("Location: toll2.php");
}
else {
header ("Location: depp.php");
}
}
?> |
Wie bereits oben erwähnt, habe ich mir gerade swicht angesehen. Etwas seltsam, da auf einmal Doppelpunkte verwendet werden. Aber hier im Heft steht, dass if/else sowieso öfter gebraucht wird... Hier mein Minipasswortscript:
| Code: |
<form action="switch.php" method="post">
<input type="text" name="pw">
<input type="submit" value="Login" name="senden">
</form>
<?php
if (isset($pw)) {
switch ($pw) {
case "hallo":
echo "Du bist eingeloggt";
break;
default:
echo "Du hast es nicht geschafft";
}
}
?> |
|
|
|
|
 |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
19.10.2004, 15:59 |
|
19.Oktober.2004
So Schule ist aus, nun gleich mal im Forum ein wenig posten. Danach Emails beantworten und ein bisschen in anderen Foren nach dem Rechten sehen Ihr ahnt es bereits? Ja, gleich darauf, das Php Heft geschnappt und weiterlernen...
Die for, foreach und do Schleifen sind halbwegs klar und es geht weiter zum Formular (reimt sich ^^). Ich bin gerade beim Coden, also schaut später wieder vorbei :D
So bin wieder mal kurz da, um mein Formularscript zu posten. Ist wirklich ein sehr einfaches ohne tollen Funktionen. Natürlich auch der Code:
| Code: |
<form action="kontakt.php" method="post">
Deine Email: <input type="text" name="mail"><br>
Betreff: <input type="text" name="betreff"><br>
Nachricht:<br> <textarea name="nachricht" cols="50" rows="5" wrap="soft"></textarea><br>
<input type="submit" value="Weg damit">
</form>
<?php
if (isset($mail) && $mail != "") {
if (mail("ypsie@gmx.at", "$betreff", "$nachricht", "From: $mail")) {
echo "<b>Danke - Die Nachricht wurde gesendet!</b>";
}
else {
echo "<b>Leider konnte die Nachricht nicht versendet werden!</b>";
}
}
?> |
Gerade versucht ein besseres Formular mit Überprüfung zu coden, ganz funktioniert es noch nicht, ich bin aber dabei. Hier mal das Script, welches nicht ganz tut, was es soll 
| Code: |
<form action="kontakt.php" method="post">
Deine Email: <input type="text" name="mail"><br>
Betreff: <input type="text" name="betreff"><br>
Nachricht:<br> <textarea name="nachricht" cols="50" rows="5" wrap="soft"></textarea><br>
<input type="submit" value="Weg damit" name="start">
</form>
<?php
if (isset($start)) {
if (isset($mail) && $mail != "" && isset($betreff) && $betreff != "" && isset($nachricht) && $nachricht != "") {
echo "<b>Sind diese Daten richtig?</b><br><br>";
echo "<b>Emailadresse</b>: $mail<br><b>Betreff</b>: $betreff<br><b>Nachricht:</b><br> $nachricht";
echo "<form action=\"kontakt.php\" method=\"post\">
<input type=\"submit\" value=\"Weg damit\" name=\"toll\">
</form>";
}
else {
echo "<b>Leider konnte die Nachricht nicht versendet werden!</b>";
}
if (isset($toll)) {
if (mail("ypsie@gmx.at", "$betreff", "$nachricht", "From: $mail")) {
echo "<b>Danke - Die Nachricht wurde gesendet!</b>";
}
}
}
?> |
Nun habe ich mir Hilfe des Heftes einen ganz einfach Textcounter erstellt. Muss zugeben das sind ein wenig viele Funktionen auf einmal, ob ich mir das alle merken werde...? Ich denke ich versuche schnellstmöglich zu Mysql umzusteigen, hat mehr Sinn, als alles in Textdateien zu speichern 
| Code: |
<?php
echo "Die Seite wurde ";
$count=fopen("counter.txt","r+");
$counter=fgets($count,100);
echo $counter;
$counter++;
rewind($count);
fputs($count,$counter);
fclose($count);
echo " mal besucht!";
?> |
Es ist mir wirklich noch gelungen! Nach etwa einer halben Stunde Verwirrung, hatte ich Glück Ich habe das System der Textdateien so halbwegs verstanden und nun eine typische Linkliste, wie man sie sehr oft findet, gecodet. Hier könnt ihr euch das Script online anschauen: php linkliste
| Code: |
<h1>Linkliste</h1>
<form action="<?php echo $PHP_SELF; ?>" method="post">
Dein Link:<br>
<input type="text" name="linkurl"><br>
Dein Linktext:<br>
<input type="text" name="linktext"> <br>
<input type="submit" value="Eintragen"></form>
<h3>Links</h3>
<?php
$datei="links.txt";
if (isset($linktext) && $linktext != "" && $linkurl != "" && isset($linkurl)) {
$angabe=fopen($datei,"r+");
$alt=fread($angabe,1000);
$derlink="<a href=\"$linkurl\" target=\"_blank\">$linktext</a>";
$ausgabe="$derlink\n<br>";
rewind($angabe);
fputs($angabe,"$ausgabe \n $alt");
fclose($angabe);
}
readfile($datei);
?> |
|
|
|
|
 |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
20.10.2004, 15:34 |
|
20.Oktober.2004
So da bin ich wieder - vor meinem Laptop in der warmen Stube. Nach einem kurzen "Forengeposte" geht es nun wieder darum Php zu erlernen. Zum Glück ist es mir noch nicht zu blöd geworden und ich schnappe mir euch schon das Heftchen. Diesmal scheint es kurz einfach zu werden, um dann in die Endphase gehen zu können. Dort erwarten mich Gästebücher, Cookies und MySql... Aber wie schon gesagt, zuerst noch etwas sehr leichtes. Wie kann man Datum in Kombination mit einer individuellen Begrüßung ausgeben. So!
| Code: |
<?php
$date=date("H");
$tag=date("j.n.y");
$zeit=date("H:i:s");
if ($date <=11) {
echo "Und ausgeschlafen?";
}
elseif ($date <= 15) {
echo "Iss wos gscheits!";
}
elseif ($date <= 18) {
echo "Schon zu Mittag gegessen?";
}
elseif ($date <= 21) {
echo "Guten Abend!";
}
else {
echo "Gute Nacht!";
}
echo "<br>Heute ist der $tag - Es ist $zeit Uhr";
?> |
Soeben bin ich bei den Cookies angelangt. Auch das ist in Php viel leichter gelöst, als ich angenommen habe. Hier ein kleines Miniscript.
| Code: |
<?php
setcookie("visit","jo");
if (isset($visit) && $visit=="jo") {
echo "Toll, dass du uns wieder besucht!";
}
else {
echo "Toll, dass du uns besuchst!";
}
?> |
|
|
|
|
 |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
21.10.2004, 17:50 |
|
21.Oktober.2004
Heute lege ich mal eine kleine Php Pause ein. Nicht, dass ich Php Lernen schon aufgegeben habe, heute fehlt einfach die passende Zeit dafür... Damit ihr trotzdem etwa sinnvolles hier lesen könnt ^^, hier einige sehr gute Php Nachschlagwerke und Tutorials:
|
|
|
|
 |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
25.10.2004, 19:42 |
|
25.Oktober.2004
Ich muss mich selber an der Nase fassen: "Julian code weiter in Php!"... Morgen geht es versprochen weiter  |
|
|
|
 |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
28.10.2004, 13:34 |
|
28.Oktober.2004
Ich sollte wohl nicht so viel versprechen... Aber Samstag habe ich Zeit wieder ausführlich zu coden. Bis dahin könnt ihr euch die neuen Artikel auf wcheck.com durchlesen. |
|
|
|
 |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
31.10.2004, 16:28 |
|
31.Oktober.2004
Gerade habe ich die Zufallsfunktion kennengelernt. Ganz lustig damit ein wenig herumzuprobieren. Ich wollte schnell mal eine zufällige Anordnung drei verschiedener Links haben. Nach 3 Minuten coden bzw. mehr Tipparbeit war es fertig und sofort fehlerfrei. Einziges Problem: Es ist viel zu komplex und lässt sich sicher viel einfach lösen, aber seht selbst:
| Code: |
<?
$zufall = rand(1,6);
$link1="<a href='http://www.wcheck.com' target='_blank'>Geld verdienen</a>";
$link2="<a href='http://www.derwebmaster.com' target='_blank'>Webmaster Verzeichnis</a>";
$link3="<a href='http://www.suchmaschinenweb.com' target='_blank'>Suchmaschinen Optimierung</a>";
$ende1="$link1<br>$link2<br>$link3";
$ende2="$link1<br>$link3<br>$link2";
$ende3="$link2<br>$link1<br>$link3";
$ende4="$link2<br>$link3<br>$link1";
$ende5="$link3<br>$link2<br>$link1";
$ende6="$link3<br>$link1<br>$link2";
if ($zufall == 1) {
echo $ende1;
}
elseif ($zufall == 2) {
echo $ende2;
}
elseif ($zufall == 3) {
echo $ende3;
}
elseif ($zufall == 4) {
echo $ende4;
}
elseif ($zufall == 5) {
echo $ende5;
}
else {
echo $ende6;
}
?> |
|
|
|
|
 |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
05.11.2004, 15:25 |
|
5.November.2004
Kurz bevor ich anfange mich mit Mysql zu befassen, zeige ich euch hier noch meine neuesten Codes.
| Code: |
<form action="<?php echo $PHP_SELF;?>" method="post">
Vorname: <input type="text" name="vorname"><br>
Nachname: <input type="text" name="nachname"><br>
<input type="submit" name="senden" value="Senden"><br>
<?php
if (isset($senden) && $vorname != "" && $nachname != "") {
$zufall=rand(-5,5);
$anfang="$vorname$nachname";
$komplett="$anfang+$zufall";
$ende=chunk_split($komplett,1,",");
$ende=explode(",",$ende);
$ende=count($ende);
if ($ende > 12) {
echo "Du bist so klug...";
}
else {
echo "Du bist dumm...";
}
}
?>
|
| Code: |
<form action="<?php echo $PHP_SELF;?>" method="post">
Zahl 1: <input type="text" name="zahl_1"><br>
Zahl 2: <input type="text" name="zahl_2"><br>
Rechenart: <select size="1" name="art">
<option value="ad">Addieren</option>
<option value="su">Subtrahieren</option>
<option value="mu">Multiplizieren</option>
<option value="di">Dividieren</option>
</select><br>
<input type="submit" name="rechnen" value="Ausrechnen">
</form>
<?php
$zahl_1 = $_POST["zahl_1"];
$zahl_2 = $_POST["zahl_2"];
$rechnen = $_POST["rechnen"];
$art = $_POST["art"];
if (isset($rechnen) && isset($zahl_1) && isset($zahl_2) && $zahl_1 == 0 && $zahl_2 == 0 && $art == "di") {
echo "Ich würde sagen: Das Ergebnis ist x, also jede x-beliebige Zahl.";
}
elseif (isset($rechnen) && isset($zahl_1) && isset($zahl_2) && $zahl_2 == 0 && $art == "di") {
echo "Durch 0 dividieren ist nicht!";
}
else {
if (isset($rechnen) && isset($zahl_1) && isset($zahl_2) && $zahl_1 != "" && $zahl_2 != "") {
if ($art == "ad") {
$ade=$zahl_1+$zahl_2;
$ade=round($ade,2);
echo "Das Ergebnis ist $ade";
}
elseif ($art == "su") {
$sue=$zahl_1-$zahl_2;
$sue=round($sue,2);
echo "Das Ergebnis ist $sue";
}
elseif ($art == "mu") {
$mue=$zahl_1*$zahl_2;
$mue=round($mue,2);
echo "Das Ergebnis ist $mue";
}
else {
$die=$zahl_1/$zahl_2;
$die=round($die,2);
echo "Das Ergebnis ist $die";
}
}
else {
if (isset($rechnen)) {
echo "So nicht ja ^^";
}
else {
echo "";
}
}
}
?> |
|
|
|
|
 |
Julian Ulrich
Administrator

Anmeldungsdatum: 29.09.2004
Beiträge: 1130
Wohnort: Wien
|
Verfasst am:
25.02.2005, 13:16 |
|
Liebe Php Freunde,
Nach einer gehörigen Ewigkeit melde ich mich wieder zurück und setze meinen Php Kurs fort. Jetzt wird es hier wieder häufig kleine Codes zu sehen geben. Hier gleich mal was leichtes zum Start:
| Code: |
<?php
$namen=array("Peter","Hannes");
echo($namen[0]." ".$namen[1]);
array_unshift($namen,"Lukas");
echo("<br>");
echo($namen[1]." ".$namen[2]." ".$namen[0]);
echo("<br>");
array_shift($namen);
echo($namen[0]." ".$namen[1]);
?> |
So sieht das Ergebnis im Browser aus:
Peter Hannes
Peter Hannes Lukas
Peter Hannes
| Code: |
<?php
$schule=array("Tafel","Schwamm","Tisch","Lehrer","Problem");
if(in_array("Problem",$schule))
{
echo "Du hast ein echtes Problem!";
}
else
{
echo "Alles klar!";
}
?> |
Ergebnis: Du hast ein echtes Problem!
Die Funktion in_array prüft, ob der angegebene Wert in dem ebenfalls definierten Array vorhanden ist. Das gekoppelt mit einer if Unterscheidung und die Sache ist perfekt.
| Code: |
<?php
bcscale(3);
$zahl1=134.4536;
$zahl2=456.7352;
$ergebnis=bcadd($zahl1,$zahl2);
echo $ergebnis;
echo '<br>';
$ergebnis2=bcsub($zahl1,$zahl2);
echo $ergebnis2;
echo '<br>';
$ergebnis3=bcmul($zahl1,$zahl2);
echo $ergebnis3;
echo '<br>';
$ergebnis4=bcdiv($zahl1,$zahl2);
echo $ergebnis4;
echo '<br>';
$ergebnis5=bcmod($zahl1,$zahl2);
echo $ergebnis5;
echo '<br>';
$ergebnis6=bcpow($zahl1,$zahl2);
echo $ergebnis6;
echo '<br>';
$ergebnis7=bcsqrt($zahl1);
echo $ergebnis7;
echo '<br>';
$ergebnis8=bccomp($zahl1,$zahl2);
echo $ergebnis8;
echo '<br>';
?> |
Zuerst definiert man zwei Zahlen, die man nachher in einigen Rechenoperation immer wieder verwendet. "bcscale" gibt die Genauigkeit an (Nachkommastellen). Alternativ lässt sich auch für jede Funktion eine individuelle Genauigkeit festlegen z.B. bcadd($1,$2,4) - 4=Anzahl der Nachkommastellen.
-----------------------------------
bcadd = erste+zweite Zahl
bcsub = erste-zweite Zahl
bcmul = erste*zweite Zahl
bcdiv = erste/zweite Zahl
bcmod = erste/zweite Zahl und gibt Rest aus
bcpow = potenziert (Basis=1.Zahl;Potenz=2.Zahl)
bcsqrt = Wurzel - nur eine Zahl! z.B. bcsqrt(9)
bccomp = vergleicht 1. mit 2. Zahl - sind diese gleich -> 0; wenn 1. größer -> 1; wenn 2. größer -> -1 |
|
|
|
 |
|
|
|
Nächstes Thema anzeigen
Vorheriges Thema anzeigen Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum bearbeiten. Du kannst deine Beiträge in diesem Forum löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|