PHP Machen, eine einfache if-isset-leeren-Funktion

Ich bin der Codierung ein Arbeitsblatt app, die für einen Drucker der Firma.
Ich bin immer in der Flut von Formularen.
Für jedes einzelne Eingabefeld, ich habe zu prüfen, ob die $_POST Variablen gesetzt sind, und wenn, so echo wieder den Wert. (Im Fall, dass einige Fehler, zum Beispiel nach einem Fehler bei der überprüfung der Benutzer sollte nicht erneut die ganze form)

Beispielcode:

if(isset($_POST['time'])&&!empty($_POST['time'])){echo $_POST['time'];}

Hatte ich zur Umsetzung dieses etwa hundert-mal.
So habe ich versucht, herauszufinden, eine Art von Funktion, um diese einfach und gut lesbar.

Etwas wie dieses:

function if_post_echo($key, $default = "") {
    if(isset($_POST[$key])&&!empty($_POST[$key])){
    echo $_POST[$key];   
    }else{
    echo $default;   
    }
}

Aber das klappt nicht.
Ich habe versucht, pass in die $_POST für die $key Variablen wie diese:

if_post_echo($_POST['time'])

function if_request_echo($key, $default = "") {
        if(isset($key)&&!empty($key)){
        echo $key;   
        }else{
        echo $default;   
        }
    }

Und ich habe auch versucht diese:

function if_request_echo($key, $default = null) {
    return isset($_REQUEST[$key])&&!empty($_REQUEST[$key]) ? $_REQUEST[$key] : $default;
}

Ohne vernünftigen Ergebnis.

Die Frage:

Wie kann ich forge eine Funktion sieht, die für die notwendige $_POST variable und gibt ihn zurück, oder wenn sein gelöscht, dann wird eine leere Zeichenfolge zurückgegeben.
Und gibt es eine Möglichkeit, dies zu tun für $_GET und $_REQUEST auch? (Oder einfach duplizieren?)

Die meisten der Zeit, sollten Sie vermeiden, $_REQUEST -, Sicherheits-Angelegenheit. Gehen Sie mit $_GET und $_POST, je nach den gesendeten Daten.
Vielen Dank für Eure Kommentare! @David: ich weiß um die $_REQUEST Problem, aber dieses mal sind wir hinter den Schutz, die app un-Beiträge aus dem Netz. @netcoder: ich kann mich nicht erinnern, warum ich diese einrichten wie diese, aber ich weiß, ich verwendet, um zu versuchen, die !leer, allein, ohne die isset und fiel einige Probleme.
wie ist $_REQUEST weniger sicher als $_GET oder $_POST? Sie können alle vom Benutzer verändert werden, um zu produzieren Werte, die die Anwendung möglicherweise nicht erwarten. Wie kann $_COOKIE für diese Angelegenheit, die $_REQUEST bekommt auch seinen Wert aus.
Haben Sie einen Blick auf Chris Shiflet Cross-Site-Fälschungen
Gut, dass es nicht wirklich eine Sicherheit, aber wesentliche Unterschied zwischen POST-und GET-Methoden.

InformationsquelleAutor Kael | 2011-04-11

Schreibe einen Kommentar