hustieboy: $_POST['array'] mit schleife leeren

hallo,

folgendes:

ich moechte, nach erfolgreicher user-eingabe saemtliche in dem: $_POST['ARRAY'] gespeicherten variablen auf leer setzen.

habe bisher immer jedes einezelne element einzeln aufgerufen
z.B.:

$_POST['email'] = "";
$_POST['login_name'] = "";
$_POST['user_password_1'] = "";
$_POST['user_password_2'] = "";

ok, wuerd nun aber, gerne bei einer grossen anzahl von Input-feldern gern mit einer schleife alle elemente des arrays leeren

dachte mir das mit "foreach" zu machen, aber das wird so wie ichs mache wohl nix:

foreach($_POST as $post)
    $post = "";

es werden halt nur alle in $post gespeicherten elemente geaender, nicht aber das array selber.....

wie mache ich das richtig ??

danke, gruss
hustieboy

  1. Hallo,

    folgendes:

    ich moechte, nach erfolgreicher user-eingabe saemtliche in dem: $_POST['ARRAY'] gespeicherten variablen auf leer setzen.

    Warum?

    habe bisher immer jedes einezelne element einzeln aufgerufen
    z.B.:

    $_POST['email'] = "";
    $_POST['login_name'] = "";
    $_POST['user_password_1'] = "";
    $_POST['user_password_2'] = "";

    ok, wuerd nun aber, gerne bei einer grossen anzahl von Input-feldern gern mit einer schleife alle elemente des arrays leeren

    Was erhoffst du dir davon?

    dachte mir das mit "foreach" zu machen, aber das wird so wie ichs mache wohl nix:

    foreach($_POST as $post)
        $post = "";

    es werden halt nur alle in $post gespeicherten elemente geaender, nicht aber das array selber.....

    wie mache ich das richtig ??

    Du suchst eine Funktion, die dir die Namen der Array-Indizes ausgibt, mit denen du dann in einer Schleife (und in dem Fall eigenet sich foreach sehr wohl) alle Elemente des $_POST-Arrays auf leer setzen kannst. Der beste Platz um mit dieser Suche anzufangen ist das PHP-Manual. Den Rest solltest du allein hinbekommen ;-)

    Grüße aus Barsinghausen,
    Fabian

  2. Hallo hustieboy,

    ich moechte, nach erfolgreicher user-eingabe saemtliche in
    dem: $_POST['ARRAY'] gespeicherten variablen auf leer
    setzen.

    Wozu?

    $_POST['email'] = "";
    $_POST['login_name'] = "";
    $_POST['user_password_1'] = "";
    $_POST['user_password_2'] = "";

    Sehr umstaendlich ;)

    dachte mir das mit "foreach" zu machen, aber das wird so
    wie ichs mache wohl nix:

    foreach($_POST as $post)
        $post = "";

    Aus http://de.php.net/foreach:

    |There are two syntaxes; the second is a minor but useful
    |extension of the first:
    |
    |foreach (array_expression as $value) statement
    |foreach (array_expression as $key => $value) statement

    Besser waere also folgendes Statement:

    foreach($_POST as $field => $value) {
      unset($_POST[$field]);
    }

    Alternativ:

    $_POST = Array();

    oder

    unset($_POST);

    Gruesse,
     CK

    --
    http://cforum.teamone.de/
    http://wishlist.tetekum.de/
    If God had meant for us to be in the Army, we would have been born with green, baggy skin.