mr.gamesbay
Mitglied
Ich hoffe mal es geht in Ordnung, wenn ich mal meine „sehr“ einfachen Anfänge hier rein Poste, vielleicht kann mir ja der eine oder andere Tipps geben, was besser zu machen ist.
So, dies ist erstes selbst geschriebenes Skript. Einige von euch dürften vielleicht gleich zum lachen anfangen, aber irgendwo muss ich ja anfangen
Hier ein ganz einfacher Rechner, den HTML Teil habe ich rausgenommen.
Einige Fragen dazu:
Diese Zeile in PHP macht nicht das was ich denke, geht dies nur wie in der langen Version die ich dann im Script benutz habe?
Gibt es die Funktion "$PHP_SELF" im 5er, oder wie rufe ich eine Seite selber auf?
Ich habe dies so gemacht:
ohne irgendwas anzugeben.
Was mich wundert, warum werden die Daten als String übergeben (über das Form.) wenn es Nummern (INT) sind?
Hier das Script in Aktion:
http://myphp.gamesbay.de/easy_rechner.php
Morgen werde ich es umschreiben und die Sache mit switch/case und Funktionen lauffähig machen
So, dies ist erstes selbst geschriebenes Skript. Einige von euch dürften vielleicht gleich zum lachen anfangen, aber irgendwo muss ich ja anfangen
Hier ein ganz einfacher Rechner, den HTML Teil habe ich rausgenommen.
PHP:
<?php
error_reporting(E_ALL);
// Prüfen ob überhaupt was übergeben worden ist
if ((isset($_POST["zahl_1"])) && (isset($_POST["zahl_2"]))){
// Hier werden die Daten mit Post über ein Form. übergeben
$zahl_1 = $_POST["zahl_1"];
$zahl_2 = $_POST["zahl_2"];
$auswahl = $_POST["auswahl"];
/*
echo gettype($zahl_1) . "<br>";
echo gettype($zahl_2) . "<br>";
*/
// Diese geht sicher einfacher, aber dies sind meine ersten Schritte :)
// Warum die nächste Zeile nicht?
// if (!is_numeric($zahl_1 || $zahl_2))
if ((!is_numeric($zahl_1)) || (!is_numeric($zahl_2)))
{
$ausgabe = "Bitte Zahlen eingeben";
}
elseif ($auswahl == "Addieren")
{
$erg_1 = $zahl_1 + $zahl_2;
$ausgabe = "Das Ergebnis ist: " . $zahl_1 . " + " . $zahl_2 . " = " . $erg_1 ;
}
elseif ($auswahl == "Subtrahieren")
{
$erg_2 = $zahl_1 - $zahl_2;
$ausgabe = "Das Ergebnis ist: " . $zahl_1 . " - " . $zahl_2 . " = " . $erg_2 ;
}
elseif ($auswahl == "Multiplizieren")
{
if ($zahl_2 == 0)
{
$ausgabe = "Du kannst eine Zahl nicht mit 0 Multiplizieren!";
}
else
{
$erg_3 = $zahl_1 * $zahl_2;
$ausgabe = "Das Ergebnis ist: " . $zahl_1 . " * " . $zahl_2 . " = " . $erg_3 ;
}
}
elseif ($auswahl == "Dividieren")
{
if ($zahl_2 == 0)
{
$ausgabe = "Du kannst eine Zahl nicht mit 0 Dividieren!";
}
else
{
$erg_4 = $zahl_1 / $zahl_2;
$ausgabe = "Das Ergebnis ist: " . $zahl_1 . " / " . $zahl_2 . " = " . $erg_4 ;
}
}
else
$ausgabe = "Irgendwas ist schief gelaufen ;)";
}
?>
<--- HTML START --->
<?php
if (isset($ausgabe)) {
echo $ausgabe;
}
else
echo "Bitte Zahlen eingeben";
?>
<--- HTML ENDE --->
Einige Fragen dazu:
Diese Zeile in PHP macht nicht das was ich denke, geht dies nur wie in der langen Version die ich dann im Script benutz habe?
PHP:
if (!is_numeric($zahl_1 || $zahl_2))
Gibt es die Funktion "$PHP_SELF" im 5er, oder wie rufe ich eine Seite selber auf?
Ich habe dies so gemacht:
Code:
<form method="post">
Was mich wundert, warum werden die Daten als String übergeben (über das Form.) wenn es Nummern (INT) sind?
Hier das Script in Aktion:
http://myphp.gamesbay.de/easy_rechner.php
Morgen werde ich es umschreiben und die Sache mit switch/case und Funktionen lauffähig machen
Zuletzt bearbeitet: