Hallo,
ich bin gerade in den Anfängen mit php und möchte wissen, wie ich so eine dynamische Seite am Besten mache.
Was ich will:
1. Zunächst eine Seite, wo eine grundlegende Funktionsauswahl vorgenommen werden kann.
2. Danach eine Seite, wo Name, Geb.Datum u. noch so paar Daten eingegeben werden.
3. Anhand der gewählten Funktion im ersten Formular sollen dem Nutzer nun einige Fragen gestellt werden.
Die Fragen sind in einer Access Datenbank gespeichert.
4. Alle angebenen Antworten und die Daten aus Punkt 2 sollen nun in die DB geschrieben werden.
Was haltet ihr von folgender Idee:
1. index.php wird zentrale Datei. In ihr wird eine Session gestartet und gleichzeitig eine Sessionvariable 'status' erstellt.
2. In index.php wird geprüft, ob 'status' == 0 ist, falls ja gehts zur funktionsauswahl.inc, wo dann status auf 1 gesetzt wird.
3. functionsauswahl.inc stellt ein HTML-Formular zur Verfügung und geht wieder zurück zu index.php
4. index.php prüft nun wieder den status ab, fällt beim ersten if durch, geht aber ins zweite. Dort wird dann die Funktionsart aus $_POST gewonnen und in einer Sessionvariable abgespeichert.
Anschließend wird zu der Erfassung der persönlichen Daten (person.inc) übergegangen.
5. Wieder in der index.php angekommen wird $_POST wieder ausgelesen und ein Objekt der Klasse Person angelegt und alles in die DB geschrieben.
6. Nun werden die Fragen (je ein Fragenobjekt) zum gewählten Thema angezeigt und sollen nun per Optionsboxen beantwortet werden.
Ist die Idee gut, oder macht man es überhaupt nicht so???
Hab zwar schon etwas programmiert in Java usw., aber da gibt es ja die schönen Ereignisse. Hier nicht.
Was mir bereits aufgefallen ist:
Ich lese die Daten im Formular immer in der index.php aus. Kann ich dies nicht schon direkt im Formular machen??
Danke
PS: Hier noch der Code zur Beschreibung.
code:
index.php
<?php
session_start();
include("./person.inc");
if ($_SESSION["status"] == 0)
{
include("funktionsauswahl.inc");
exit();
}
if($_SESSION["status"] == 1)
{
$_SESSION["Thema"] = $_POST["Wahl"];
include("persondaten.inc");
exit();
}
$p = new Person($_POST["Name"], $_POST["Vorname"], ...);
....
>
funktionsauswahl.inc
code:
<?php
//session_start();
$_SESSION["status"] = 1;
?>
<html> .... </html>
personendaten.inc
<?php
//session_start();
$_SESSION["status"] = 2;
?>
ich bin gerade in den Anfängen mit php und möchte wissen, wie ich so eine dynamische Seite am Besten mache.
Was ich will:
1. Zunächst eine Seite, wo eine grundlegende Funktionsauswahl vorgenommen werden kann.
2. Danach eine Seite, wo Name, Geb.Datum u. noch so paar Daten eingegeben werden.
3. Anhand der gewählten Funktion im ersten Formular sollen dem Nutzer nun einige Fragen gestellt werden.
Die Fragen sind in einer Access Datenbank gespeichert.
4. Alle angebenen Antworten und die Daten aus Punkt 2 sollen nun in die DB geschrieben werden.
Was haltet ihr von folgender Idee:
1. index.php wird zentrale Datei. In ihr wird eine Session gestartet und gleichzeitig eine Sessionvariable 'status' erstellt.
2. In index.php wird geprüft, ob 'status' == 0 ist, falls ja gehts zur funktionsauswahl.inc, wo dann status auf 1 gesetzt wird.
3. functionsauswahl.inc stellt ein HTML-Formular zur Verfügung und geht wieder zurück zu index.php
4. index.php prüft nun wieder den status ab, fällt beim ersten if durch, geht aber ins zweite. Dort wird dann die Funktionsart aus $_POST gewonnen und in einer Sessionvariable abgespeichert.
Anschließend wird zu der Erfassung der persönlichen Daten (person.inc) übergegangen.
5. Wieder in der index.php angekommen wird $_POST wieder ausgelesen und ein Objekt der Klasse Person angelegt und alles in die DB geschrieben.
6. Nun werden die Fragen (je ein Fragenobjekt) zum gewählten Thema angezeigt und sollen nun per Optionsboxen beantwortet werden.
Ist die Idee gut, oder macht man es überhaupt nicht so???
Hab zwar schon etwas programmiert in Java usw., aber da gibt es ja die schönen Ereignisse. Hier nicht.
Was mir bereits aufgefallen ist:
Ich lese die Daten im Formular immer in der index.php aus. Kann ich dies nicht schon direkt im Formular machen??
Danke
PS: Hier noch der Code zur Beschreibung.
code:
index.php
<?php
session_start();
include("./person.inc");
if ($_SESSION["status"] == 0)
{
include("funktionsauswahl.inc");
exit();
}
if($_SESSION["status"] == 1)
{
$_SESSION["Thema"] = $_POST["Wahl"];
include("persondaten.inc");
exit();
}
$p = new Person($_POST["Name"], $_POST["Vorname"], ...);
....
>
funktionsauswahl.inc
code:
<?php
//session_start();
$_SESSION["status"] = 1;
?>
<html> .... </html>
personendaten.inc
<?php
//session_start();
$_SESSION["status"] = 2;
?>
Kommentar