Graphity (Raul Pinto): MSIE 6 schickt Formular nicht ab

Hallo Leute

Ich habe folgendes Problem:
Ich habe ein Formular in einem Feld und eine Liste im anderen Frame. Das Formular wird beim Laden mit bestimmten Namen aus dem rechten Frame gefüllt, das ganze via JavaScript.
Das funktioniert alles ohne Probleme.

Aber wenn ich jetzt auf den "Absenden"-Knopf drücke, wird das Formular nicht gesendet. In dem Formular stehen 125 input-type=text-Felder. Könnte das ein Problem sein? Wenn ich einige Felder lösche, kann ich es absenden. Dann bleiben aber nur < 10 beschriftete Felder übrig und irgendwie glaube ich nicht, daß der MSIE 6 nur 10 Felder abschicken kann...

Der w3c-validator behauptet es gäbe keine HTML-Fehler, außer, daß es das text-Atrribut nicht gibt, daß sollte aber kein Problem ausmachen... http://validator.w3.org/check?uri=http%3A%2F%2F141.39.174.52%2Fklinik%2Feinteilungsplan%2Faendern%2Fetp-formular.php%3Ftimestamp%3D1025042400&charset=(detect+automatically)&doctype=(detect+automatically)

Und der MSIE sagt nichts von einem JavaScript-Fehler.

Hat jemand eine Idee, was ich machen könnte?

Danke im vorraus
Euer
   Graphity

PS: ich hoffe es ist nicht nötig, die Seite auf meinem Apache freizugeben... wenn doch, bitte posten

  1. hi Graphity

    wie gedenkst du das formular denn zu verschicken?
    mit html und javascript wirst du da nicht weit kommen.
    es hört sich für mich so an als ob ein serverseitiges programm (z.B. sendmail) zum verschicken fehlt, oder du hast es nur nicht erwähnt.

    nur so ne vermutung :)

    so long
    ole
    (8-)>

    1. hi Graphity

      wie gedenkst du das formular denn zu verschicken?
      mit html und javascript wirst du da nicht weit kommen.
      es hört sich für mich so an als ob ein serverseitiges programm (z.B. sendmail) zum verschicken fehlt, oder du hast es nur nicht erwähnt.

      nur so ne vermutung :)

      so long
      ole
      (8-)>

      Sorry, hatte ich nicht dazu gesagt.
      Ich verschicke es mit einem Submit-button. Der führt zu einem PHP-Script, welches die Daten in eine Datenbank einträgt.

      Geht das nicht?

      (Übrigens ist mir gerade eingefallen, daß man den Quellcode ja am w3c-validator sieht, falls es einen danach verlangt)

      1. hi nochmal

        Sorry, hatte ich nicht dazu gesagt.
        Ich verschicke es mit einem Submit-button. Der führt zu einem PHP-Script, welches die Daten in eine Datenbank einträgt.

        Geht das nicht?

        ich denk was dir fehlt ist wirklich ein script/programm das dein formular abschickt.
        aber darüber sollen sihc mal bitte die php experten hier im forum auslassen, da das cniht grad eine meiner stärken ist :)

        so long
        ole
        (8-)>

        1. hi nochmal

          Sorry, hatte ich nicht dazu gesagt.
          Ich verschicke es mit einem Submit-button. Der führt zu einem PHP-Script, welches die Daten in eine Datenbank einträgt.

          Geht das nicht?

          ich denk was dir fehlt ist wirklich ein script/programm das dein formular abschickt.
          aber darüber sollen sihc mal bitte die php experten hier im forum auslassen, da das cniht grad eine meiner stärken ist :)

          so long
          ole
          (8-)>

          Ach scheiße, das ist jetzt echt blöd. Das Proggi sollte am Montag laufen  und jetzt...

          Naja, trotzdem danke für Deine hilfe!

          cu
            Graphity

  2. Hallo Raul

    Ich habe folgendes Problem:
    Ich habe ein Formular in einem Feld und eine Liste im anderen Frame. Das Formular wird beim Laden mit bestimmten Namen aus dem rechten Frame gefüllt, das ganze via JavaScript.
    Das funktioniert alles ohne Probleme.

    Aber wenn ich jetzt auf den "Absenden"-Knopf drücke, wird das Formular nicht gesendet. In dem Formular stehen 125 input-type=text-Felder. Könnte das ein Problem sein? Wenn ich einige Felder lösche, kann ich es absenden. Dann bleiben aber nur < 10 beschriftete Felder übrig und irgendwie glaube ich nicht, daß der MSIE 6 nur 10 Felder abschicken kann...

    der Fehler hat eine ganz simple Ursache. Du definierst dein Formular mit

    <form action="etp-formular-einfuegen.php" name="ETPFormular">

    da hier keine Angabe der Methode vorhanden ist, wird standardgemäß die Methode "get" verwendet.

    Get überträgt das Formular über die URL. Hier gibt es aber eine Längenbegrenzung und die scheint zuzuschlagen.

    Verwende die Methode "post" und dann sollte es hoffentlich auch klappen.

    Und der MSIE sagt nichts von einem JavaScript-Fehler.

    naja, andere Browser meckern vielleicht bei solchen Angaben:

    onClick="javascript:parent.Menurechts.feld_aendern(this);"

    javascript hat hier nichts zu suchen, den onclick ist bereits javascript.

    besser:
    onClick="parent.Menurechts.feld_aendern(this);"

    Viele Grüße

    Antje

    1. Hallo Anja,

      habe Deine Antwort etwas spät erst gelesen. Sorry dafür. Aber _Herzlichsten_ (großgeschrieben und unterstrichen) für Deine Hilfe. Ich könnte Dich küssen, es lag an der Methode. Jetzt wird dieses Proggi rechtzeitig fertig!!

      cu
        Graphity

    2. Hallo Antje,

      ich habe gerade gemerkt, dass es mit GET/POST und der Längenbegrenzung für GET durchaus andere Meinungen gibt...

      Ich habe folgendes Problem:
      Ich habe ein Formular in einem Feld und eine Liste im anderen Frame. Das Formular wird beim Laden mit bestimmten Namen aus dem rechten Frame gefüllt, das ganze via JavaScript.
      Das funktioniert alles ohne Probleme.

      Aber wenn ich jetzt auf den "Absenden"-Knopf drücke, wird das Formular nicht gesendet. In dem Formular stehen 125 input-type=text-Felder. Könnte das ein Problem sein? Wenn ich einige Felder lösche, kann ich es absenden. Dann bleiben aber nur < 10 beschriftete Felder übrig und irgendwie glaube ich nicht, daß der MSIE 6 nur 10 Felder abschicken kann...

      der Fehler hat eine ganz simple Ursache. Du definierst dein Formular mit

      <form action="etp-formular-einfuegen.php" name="ETPFormular">

      da hier keine Angabe der Methode vorhanden ist, wird standardgemäß die Methode "get" verwendet.

      Ich war der Meinung, das POST die Default-Methode bei Formularen sei. Nur wenn der URL etwas übergeben wird in action="...." dann schaltet der Browser um auf GET, aber nur wenn die Methode nicht explizit angegeben wurde. Soweit jedenfalls meine Erfahrungen hiermit.

      Get überträgt das Formular über die URL. Hier gibt es aber eine Längenbegrenzung und die scheint zuzuschlagen.

      Wegen der Längenbegrenzung habe ich mir gerade heiße Ohren eingefangen. Allerdings habe ich das auch gelesen, kann es aber nicht wiederfinden.

      http://forum.de.selfhtml.org/?m=86878&t=15551

      Verwende die Methode "post" und dann sollte es hoffentlich auch klappen.

      Das sollte passen.

      Das Ergebnis inteessiert mich nun doch. Gibt es eine Längenbeschränkung und was ist Default-Methode?

      Liebe Grüße

      Tom

      1. Hallo Thomas

        ich habe gerade gemerkt, dass es mit GET/POST und der Längenbegrenzung für GET durchaus andere Meinungen gibt...

        Ich war der Meinung, das POST die Default-Methode bei Formularen sei. Nur wenn der URL etwas übergeben wird in action="...." dann schaltet der Browser um auf GET, aber nur wenn die Methode nicht explizit angegeben wurde. Soweit jedenfalls meine Erfahrungen hiermit.

        Nein, es war schon immer so und ist auch in den Standards entsprechend definiert:

        method      (GET|POST)     GET       -- HTTP method used to submit the form--

        This attribute specifies which HTTP method will be used to submit the form data set. Possible (case-insensitive) values are "get" (the default) and "post".

        Get überträgt das Formular über die URL. Hier gibt es aber eine Längenbegrenzung und die scheint zuzuschlagen.

        Wegen der Längenbegrenzung habe ich mir gerade heiße Ohren eingefangen. Allerdings habe ich das auch gelesen, kann es aber nicht wiederfinden.

        http://forum.de.selfhtml.org/?m=86878&t=15551

        Das Ergebnis inteessiert mich nun doch. Gibt es eine Längenbeschränkung und was ist Default-Methode?

        Die Aussagen im Thread sind eindeutig. Offline konnte ich im IE ziemlich genau 2048 Zeichen ermitteln, danach wurde einfach abgeschnitten.
        Abgesehen davon gibt es eine IE-Version (irgendeine 5.0), da war nach 72 Zeichen Schluß, aber nur unter bestimmten Bedingungen. Ich würde mich niemals auf get verlassen, wenn große Datenmengen transportiert werden müssen. Wieviele Zeichen durchkommen ist viel zu stark vom Browser, Server und anderen Sachen abhängig.

        Viele Grüße

        Antje