PHP: Variablen auf mehreren Dateien verfügbar?

... komplette Frage anzeigen

3 Antworten

Mache es dir nicht zu kompliziert.

frage.php

<html>
<head>
<title>Fragen</title>
</style>
</head>
<body>
<form action="./antwort.php" method="post">
<select name="selDatum">
    <option value="03-10">Wie lange ist es noch bis zum 10. März?</option>
    <option value="05-23">Wie lange ist es noch bis zum 23. Mai?</option>
    <option value="12-25">Wie lange ist es noch bis Weihnachten?</option>
</select>
<input type="submit" value="Frage stellen" />
</form>
</body>
</html>

antwort.php

<html>
<head>
<title>Antworten</title>
</style>
</head>
<body>
<?php
    $CR = "<br />\\\\\\\\n";
    $sDatum = Date("Y") . "-" . $_POST["selDatum"];
    $sHeute = Date("Y-m-d");
    if($sHeute <= $sDatum)
    {
        $iDiff = strtotime($sDatum) - strtotime($sHeute);
        $iTage = round($iDiff / (60 * 60 * 24));
        echo "Bis zum $sDatum sind noch $iTage Tage.$CR";
    }
    else
        echo "Das Datum $sDatum ist längst vorbei.$CR";
?>
</body>
</html>
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von myjack
29.01.2013, 22:45

Ja... das ist für den Armen bestimmt viel einfacher zu verstehen ;)

1

Wie man Codebeispiele richtig einfügt:

  1. Den Code in die Frage einfügen
  2. Oberhalb und unterhalb eine leere Zeile schaffen
  3. Den eingefügten Quelltext markieren
  4. Den Knopf für "Codebeispiel einfügen" drücken (oder STRG+K)

Das funktioniert übrigens auch bei Antworten...
Eine ordentlich gestellte Frage erhöht die Chancen auf brauchbare Antworten ungemein.

Antwort bewerten Vielen Dank für Deine Bewertung

Das ist relativ einfach, ich geb dir vorneweg die Lösung, aber beschäftig dich damit ein wenig :-)

Übrigens muss die frage.php keine PHP datei sein, weil überhaupt kein php code abgearbeitet wird :-)

Was ich hier mache: Bei der Frage.php einfach die Frage stellen + Link zur antwort.php und eine GET-Variable dazu. Diese GET Variable steht in der URL und kann im aufgerufenen PHP Skript über $_GET['variablenname']; aufgerufen werden -> dann machen wir einfach mit switch-case eine fallunterscheidung wo wir einfach gucken, welche Frage denn beantwortet werden soll ;-)

Frage.php

<!DOCTYPE html>
<html>
<!-- Author: Hosenmist95 -->
<head>
<title>Daumen hoch für Hosenmist95</title>
</head>
<body>
<p>Frage 1<br>
<a href="antwort.php?frage=1">Antwort</a></p>
<p>Frage 2<br>
<a href="antwort.php?frage=2">Antwort</a></p>
<p>Frage 3<br>
<a href="antwort.php?frage=3">Antwort</a></p>
<p>Frage 4<br>
<a href="antwort.php?frage=4">Antwort</a></p>
</body>
</html>

Antwort.php

<?php
    //über $_GET erfahren wir, welche Frage den beantwortet werden soll
    $frage = $_GET['frage'];
    //switch ist eine vereinfachte if-variante (wenn $frage = 1 dann mach den code bis break)
    switch($frage){
        case "1":
            //Antwort zu Frage 1
            $output = "Antwort zu Frage 1";
            break;
        case "2":
            //Antwort zu Frage 2
            $output = "Antwort zu Frage 2";
            break;
        case "3":
            //Antwort zu Frage 3
            $output = "Antwort zu Frage 3";
            break;
        case "4":
            //Antwort zu Frage 4
            $output = "Antwort zu Frage 4";
            break;
    }
?>
<!DOCTYPE html>
<html>
<!-- Author: Hosenmist95 -->
<head>
<title>Daumen hoch für Hosenmist95</title>
</head>
<body>
<?php
    echo $output;
?>
</body>
</html>
Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?