phpbar.de logo

Mailinglisten-Archive

[php] Abfrageproblem zur Formularbehandlung, -auswertung

[php] Abfrageproblem zur Formularbehandlung, -auswertung

Steffen Kother steffen.kother at gmx.net
Die Mai 30 10:35:30 CEST 2006


Hallo Leute,

würde gern mal wissen, wie ihr die verschiedenen Formularaktionen 
auswerten würdet bzw. wie es sich optimieren liese.

PHP-Version ist 4.x.y und es kommt in diesen/m Formular(en) kein 
Javascript zur Anwendung.

Ich habe ein Basisskript "step.1.create.php", das mir mir zu Beginn ein 
(leeres) Formular "Schritt 1" liefert. In diesem Formular gibt es ein 
für die Anwendung allgemeines Menü:

"Zurück"     = $_POST['action']['back']:
    verlässt die Anwendung mittels header()

"Neueingabe" = ($_POST['action']['clear']:
    sendet das Formular an das Skript und leert $_POST und gibt wieder 
"Schritt 1"
    aus

"Laden"      = $_POST['action']['loadlocal']:
    ruft das Skript auf, lädt und gibt das Formular für den Dateiupload 
aus(, von
    dort aus wird wieder das Skript aufgerufen und die Datei ausgewertet 
und das
    vorgefüllte Formular "Schritt 1" ausgegeben)

"Speichern"  = $_POST['action']['savelocal']:
    sendet das Formular an das Skript ruft die Downloadfunktion auf und 
fordert
    sofern Datenvorhanden zu Download auf, das Formular "Schritt 1" 
bleibt im
    Hintergrund unverändert

"Drucken"    = $_POST['action']['print']:
    sendet das Formular an das Skript und die Daten werden an das 
Druckformular
    weiter- und ausgegeben.

"Sichern"    = $_POST['action']['save']:
    sendet das Formular und übergibt die Daten zur Validierung und 
Speicherformular

Bei mir sieht die Überprüfung auf die entsprechende "Action", das 
Skript, so aus:

<?php

require_once('../../../config/config.main.inc.php');
require_once('../../../config/config.reklamation.inc.php');
require_once('../../../library/commonPlus.class.inc.php');

$schritt1 =& single('common');
$schritt1 -> reqClassesPlus('template:mysql:reklamation:step1', false);

if (!empty($_POST['action']) ) {

    $action = $_POST['action'];

    if (!empty($action['back']) && empty($_POST['return_from_print'])) {

        header('Location: 
http://nbkother/rekl_v2_test/modules/vertrieb/reklamationen');
        exit;

    } elseif (!empty($action['clear'])) {

        $_POST = array();

    } elseif (!empty($action['savelocal'])) {

        $schritt1 -> reklamation -> 
saveFormLocal('Reklamation_Schritt_1');
        $_POST['action'] = '';

    }
}

if (empty($_POST['action']) || (empty($action['print']) && 
empty($action['save']))) {

    $schritt1 -> step1 -> setupPageStep(&$schritt1, 'Schritt 1');
    $schritt1 -> step1 -> setupForm(&$schritt1);
    $schritt1 -> template -> display('Schritt 1');

} elseif (!empty($action['loadloacal'])) {

    $schritt1 -> reklamation -> loadFromLocal();

} elseif (!empty($action['print'])) {

    $schritt1 -> reklamation -> printStep(&$schritt1);

} elseif (!empty($action['save'])) {

    // Validierung und Speicherung der Daten in Datenbank bzw. Ruckkehr 
zur Eingabe

}
?>

Wie würdet ihr die Abfrage(n) machen? Würde mich über eure Meinungen 
freuen.
-- 
Mit freundlichen Grüßen / Kind regards

Steffen Kother 


php::bar PHP Wiki   -   Listenarchive