Lieber PHP-Neuling,
auch wenn Du meinst, Dein Problem hätte sich erledigt, hier noch ein Hinweis zu Deinem Code.
<?php ini_set("display_errors", true); ini_set("session.save_handler", "files"); session_start(); //Aktiviert die Verwendung von Session Variablen in PHP // Nulle Session Variablen --> $_SESSION["Variable1"] = Null ; ?> <!-- Weise Session Variablen den Wert der Forms zu --> <?php $_SESSION["Variable1"] = $_POST["Variable1"]; ?>
Man sieht, dass Du grundsätzlich davon ausgehst, dass in den _POST-Daten ein Index Variable1
existiert, ohne das vorher zu prüfen. In dem von mir verlinkten Wiki-Artikel wird gezeigt, wie man das sinnvoller löst, indem man die Datenstruktur, die man gerne hätte, vorher erstellt, um sie dann Stück für Stück mit der vom Browser versandten abzugleichen. Hier einmal anders herum:
$_SESSION['wunsch'] = array(
'var1' => 0,
'var2' => '',
'var3' => false
);
// alle gePOSTeten Daten abklappern
foreach ($_POST as $key => $value) {
// nur erwartete Daten verarbeiten
if (array_key_exists($key, $_SESSION['wunsch'])) {
$_SESSION['wunsch'][$key] = $value;
}
}
So vermeidest Du Fehler wie undefined index.
In der weiteren Verarbeitung kannst Du dann beliebige Kriterien an den so in der Session festgehaltenen Datenbestand stellen, um zu entscheiden, ob das so in die DB darf, oder ob der User hier inhaltlich nachbessern muss (Stichwort Affenformular).
Nebenbei hat es einen Sinn, mittels der Session auch gleich einen Login-Mechanismus zu implementieren, damit nicht einfach jeder an alles dran kommt.
Liebe Grüße
Felix Riesterer