Frank: input value feld füllen

moin moin leutz,

also ich habe ein formular, wo ich mehrere input felder habe.
so sehen sie aus:
<input type="text" name="email[]" value="">

davon hab ich fünf stück

so, jetzt weis ich aber nicht, was ich in value eintragen soll, wenn die seite auferufen wird, damit die felder leer sind, und damit die felder automatisch mit den abgesendeten inhalten wieder beschrieben werden, wenn beim abschicken des scriptes ein fehler auftaucht.

wollte es erst so versuchen:
<? echo $email[]; ?> aber das funst ja net.

hat jemand ne idee, und kann mir helfen, ist wichtig.

danke schonmal

mfg
Frank

  1. hi,

    so, jetzt weis ich aber nicht, was ich in value eintragen soll, wenn die seite auferufen wird, damit die felder leer sind, und damit die felder automatisch mit den abgesendeten inhalten wieder beschrieben werden, wenn beim abschicken des scriptes ein fehler auftaucht.

    vielleicht solltest du erst einmal feststellen, ob das formular "einfach aufgerufen" oder bereits abgeschickt wurde.

    und sieh dir die dclp-faq zum thema "affenformular" an:
    http://www.dclp-faq.de/q/q-stil-normalform.html

    gruss,
    wahsaga

  2. Nabend,

    funst

    Von welchem Wort meinst du "funst" korrekt abgeleitet zu haben?

    hat jemand ne idee, und kann mir helfen, ist wichtig.

    Du möchtest einen String ausgeben, versuchst es zZ aber mit einem Array. Greife explizit auf das n-te Array-Elmenet zu. (wobei ich nun nicht 100pro weiß, wie leere Felder behandelt werden, sprich ob für sie auch ein Element im _POST/$_GET-Array erzeugt wird)

    Bis denne,

    1. Hello,

      hat jemand ne idee, und kann mir helfen, ist wichtig.
      Du möchtest einen String ausgeben, versuchst es zZ aber mit einem Array. Greife explizit auf das n-te Array-Elmenet zu. (wobei ich nun nicht 100pro weiß, wie leere Felder behandelt werden, sprich ob für sie auch ein Element im _POST/$_GET-Array erzeugt wird)

      Ja, wird erzeugt...
      Nur Auswahlfelder werden nicht übertragen, wenn sie nicht ausgewählt wurden. Sogar leere <input type="file" ...> werden übertragen und angelegt. Man muss daher beim Multiupload von Files (mit mehreren Feldern) immer erst fragen, ob denn überhaupt Dateilänge vorhanden ist (oder ähnliche Prüfung).

      Aber die Ausgabe sollte immer htmlentities($_POST["mail"][$x]) lauten. Denn auch in mail-feldern kann irgendwelcher Blödsinn eingetragen werden. Und an stripslashes() muss man ggf. auch noch denken.

      Liebe Grüße aus http://www.braunschweig.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
  3. Hallo Frank,

    wollte es erst so versuchen:
    <? echo $email[]; ?> aber das funst ja net.

    Wie, hast du das in value reingeschrieben? Also value="<? echo $email[]; ?>"? Das sollte naemlich normalerweise laufen. Ansonsten, beschreibe dein Problem noch etwas genauer.

    liebe Gruesse,
    David Schneider

    1. Moin David

      wollte es erst so versuchen:
      <? echo $email[]; ?> aber das funst ja net.

      Wie, hast du das in value reingeschrieben? Also value="<? echo $email[]; ?>"? Das sollte naemlich normalerweise laufen. Ansonsten, beschreibe dein Problem noch etwas genauer.

      ja und welchen Key soll er ausgeben?
      Man man man....

  4. Hallo
    auftaucht.

    wollte es erst so versuchen:
    <? echo $email[]; ?> aber das funst ja net.

    Was funzt net?
    Fehlermeldungen?
    Warum benutzt Du für E-Mail ein Array?
    Weist Du was ein Array ist?
    Das Funzt sicher.

    <input type="text" size="20" name="name" value="<? echo $name ?>">

    hat jemand ne idee, und kann mir helfen, ist wichtig.

    Ja gern, warte, ich gehen mal in die Reinigung und hole die Glaskugel ab.

    TomIRL

  5. Hallo,

    <input type="text" name="email[]" value="">
    <? echo $email[]; ?> aber das funst ja net.

    Doch:
    <input type="text" name="email[1]" value="<?php print $email[1]; ?>">
    <input type="text" name="email[2]" value="<?php print $email[2]; ?>">
    <input type="text" name="email[3]" value="<?php print $email[3]; ?>">
    <input type="text" name="email[4]" value="<?php print $email[4]; ?>">
    <input type="text" name="email[5]" value="<?php print $email[5]; ?>">

    Ein Array geht eigentlich bei 0 los, und email[200] gibt dein lestztes Array-Element aus.

    Wenn Du die Felder durchnummerierst, dann kannst Du 100%ig sicher sein, dass auch in dem Feld die selbe E-Mail-Adresse drinsteht wie vorhin. Wenn z.B. Das 3.Feld leer bleibt, könnte es sein, dass hier der Wert des 4. drinsteht. Verstanden? Egal!

    So wie es oben steht gehts auf alle Fälle.

    Irgendwer hier im Forum sagte mir mal:
    <? ist nicht gut, besser <?php wegen der Austauschbarkeit der Server.

    und 2.
    print ist besser als echo wegen irgend einer c-Programmier-geschichte...

    Greets