MoTy: submit kommt bei Server nicht an

Hallo,
habe auf meiner Seite einen Submit Button.
Sobald dieser gedrückt wird, soll auf dem Server eine
Exe angestossen werden. Dies funktioniert auch .... bis
auf wenigen PC's. Bei diesen kommt beim Server einfach nichts an.
So als würde der Submit nicht ausgeführt.

Hab es schon mit verschiedenen Versionen des IE und auch mit den Sicherheitseinstellungen probiert. Daran liegt es nicht.

Hat jemand eine Idee, oder kennt dieses Problem?

Danke
Gruß Tom

  1. Hab es schon mit verschiedenen Versionen des IE und auch mit den Sicherheitseinstellungen probiert. Daran liegt es nicht.

    Hat jemand eine Idee, oder kennt dieses Problem?

    Du solltest dich mit den Grundlagen auseinanderetzen. Was ist CGI? Was passiert wo? Welches Programm ist brauche ich? usw.

    Struppi.

    1. ... Danke, doch dies ist mir klar. Das beschrieben Problem taucht ja auch nur auf wenigen PC's auf. Und soviel ich weiß brauch der Client PC für das korrekte Ausführen einer Seite mit CGI keinen besonderen Programme, oder...?

      1. ... Danke, doch dies ist mir klar.

        das glaub ich nicht.

        Ich hab keine grosse Lust alles zu erklären, aber 2 grundsätzliche Denkfehler von dir sind, erstens das CGI Programm, das durch den Browser (Client) angestossen wird, läuft auf dem Server. folglich hat keine Einstellung im Client irgendwas mit dem CGI Programm zu tun. Zweitens, ist dir klar, das exe Dateien nur auf Windows Rechnern läuft und folglich der server ebenfalls ein Windows Rechner sein muss? (Natürlich auch das richtige)

        und, woran merkst du das die Daten nicht ankommen?

        Struppi.

        1. ... Danke, doch dies ist mir klar.

          das glaub ich nicht.

          Ich hab keine grosse Lust alles zu erklären, aber 2 grundsätzliche Denkfehler von dir sind, erstens das CGI Programm, das durch den Browser (Client) angestossen wird, läuft auf dem Server. folglich hat keine Einstellung im Client irgendwas mit dem CGI Programm zu tun. Zweitens, ist dir klar, das exe Dateien nur auf Windows Rechnern läuft und folglich der server ebenfalls ein Windows Rechner sein muss? (Natürlich auch das richtige)

          und, woran merkst du das die Daten nicht ankommen?

          Struppi.

          »»folglich hat keine Einstellung im Client irgendwas mit dem CGI Programm zu tun
          --> brauch der Client PC für das korrekte Ausführen einer Seite mit CGI keinen besonderen Programme ... wie gesagt.

          Da die gesamte Anwendung nur im Intranet aufrufbar ist kann ich davon ausgehen, dass es sich hierbei nur um Windows PCs handelt.

          Dass die Daten nicht ankommen, also kein Aufruf des Webservers stattfindet, merke ich da dran, dass der von mir verwendete Webserver mir die möglichkeit bietet, alle ankommenden Anfragen step für step abzuarbeiten, sozusagen durch das Exe-File zu steppen.

          Aber zurück zur Frage, wenn wie du sagst, auf dem Client PC Einstellungen usw. keine Rolle spielen, fällt dir spontan etwas ein, an was es dann liegen könnte?

          1. Da die gesamte Anwendung nur im Intranet aufrufbar ist kann ich davon ausgehen, dass es sich hierbei nur um Windows PCs handelt.

            D.h. du hast eine exe Datei auf deinem Intranetserver, die einen gültigen HTTP header sendet?

            Dass die Daten nicht ankommen, also kein Aufruf des Webservers stattfindet, merke ich da dran, dass der von mir verwendete Webserver mir die möglichkeit bietet, alle ankommenden Anfragen step für step abzuarbeiten, sozusagen durch das Exe-File zu steppen.

            Was für anfragen?

            Also, da du davon sprachst, das die Daten nicht submittet werden, nehm ich an du hast ein Formular in einer HTML Seite:

            <form action="deinCGI.exe">

            und darin Formularelemente:

            <input type="text" name="einFeld">

            </form>

            und in deinem CGI wird nach dem abschicken des Formulares irgendwas mit den Daten gemacht?
            Ich hab jetzt keine Ahnung in was für einer Sprache dein CGI geschrieben wurde, aber in Perl sieht das dann so aus:

            use CGI;

            my $input = CGI::param('einFeld');

            und dann gibt dein CGI einen Header zurück und um zu prüfen ob die Daten übergeben wurden gibst du diese aus:

            (in Perl)

            print CGI::header('text/plain'), "Der Wert lautet: $input";

            und jetzt kommt nichts im Browser an? Es wird keine Fehler angezeigt, keine Ausgabe?
            Oder?

            Struppi.

            1. Mein Formular in Kurzform:
              <FORM id=form1 name=form1 action=/wapla/WaPla.exe>
              <INPUT ID=SUBMIT1 TYPE=SUBMIT VALUE="Status speichern" NAME=BUTTON>
              </FORM>

              Wenn ich nun den Button SUBMIT1 drücke, müßte nun die exe aufm Server angetossen werden. Doch dies geschiet bei wenigen PCs leider nicht. ...beim Client PC passiert da durch gar nichts.

              1. <FORM id=form1 name=form1 action=/wapla/WaPla.exe>
                <INPUT ID=SUBMIT1 TYPE=SUBMIT VALUE="Status speichern" NAME=BUTTON>
                </FORM>

                die Syntax ist nicht korrekt. Die Attribut Werte müssen in Anführungszeichen.

                Wenn ich nun den Button SUBMIT1 drücke, müßte nun die exe aufm Server angetossen werden. Doch dies geschiet bei wenigen PCs leider nicht. ...beim Client PC passiert da durch gar nichts.

                Was heißt wenigen PC? läuft dort ein server? ist dort Windows installiert? läuft dort das Programm im DOS Fenster? Beim Client müßte eine Fehlermledung erscheinen

                Tut mir leid, aber dir läßt sich sich ganz schlecht helfen wenn du nur Bruchstücke an Informationen preis gibst.
                Nach wie vor fehlt als information:

                * was für ein Server
                * was für ein Client
                * was für eine Programmiersprache
                * was passiert normalerweise, was passiert nicht
                * was ist der Unterschied auf den verschiedenen Rechnern

                Struppi.

                1. Auf den PC's, auf denen es nicht läuft, ist eigenlich nichts anderst als bei den auf denen es läuf. Auf allen ist Win2000 installiert.

                  * was für ein Server

                  Beim Server handelt es sich um ein WinXP auf denen als Webserver
                  SOLO läuft. Dieser Webserver wird von meinem Entwicklungstool mitgeliefert.

                  * was für ein Client

                  Win2000

                  * was für eine Programmiersprache

                  In der HTML-Seite benutze ich ausschließlich HTML.
                  Die Exe-Datei wird durch einen COBOL-Compiler erstellt.
                  (Daran kann der Fehler nich liegen, da diese nicht einmal gestartet wird)

                  * was passiert normalerweise, was passiert nicht

                  Normalerweise wird die Exe-Datei ausgeführt, sobal auf den Button gedrückt wird. Diese Exe Datei verarbeitet einige Daten und gibt danach eine Statusmeldung zurück.

                  * was ist der Unterschied auf den verschiedenen Rechnern

                  ... wenn ich das wüßte. Sind eigentlich alle exakt gleich.

                  Aber der Fehler müßte eigentlich am Client liegen. Alle Aufrufe, die am Server ankommen werden auch korrekt ausgeführt  ... wenn Sie ankommen....

                  1. * was für ein Server
                    Beim Server handelt es sich um ein WinXP auf denen als Webserver
                    SOLO läuft. Dieser Webserver wird von meinem Entwicklungstool mitgeliefert.

                    * was für ein Client
                    Win2000

                    Ich meinte was für einen Browser.
                    oben schreibst du XP und hier 2000?

                    * was für eine Programmiersprache
                    In der HTML-Seite benutze ich ausschließlich HTML.
                    Die Exe-Datei wird durch einen COBOL-Compiler erstellt.
                    (Daran kann der Fehler nich liegen, da diese nicht einmal gestartet wird)

                    Klar, aber prinzipiell muss ein CGI Programm erst mal einen CGI header zurückgeben, das kannst du prüfen in dem du das Porgramm in der DOS Konsolle startest, dort sollte dann ein gültige HTTP ausgabe erscheinen.

                    Aber der Fehler müßte eigentlich am Client liegen. Alle Aufrufe, die am Server ankommen werden auch korrekt ausgeführt  ... wenn Sie ankommen....

                    Dann kanns es sein, das die ausgabe des Skriptes falsch ist. Wie gesagt ein gültiger HTTP header ist notwendig. Allerdings gibt es einige IE Versionen die das ignorieren und einfach etwas anzeigen auch wenn sie es nicht sollten. Folglich musst du  die Ausgabe prüfen.

                    Struppi.

                    1. oben schreib ich zu client und unten zu server.
                      client = win2000 / server = XP

                      Auf allen IE 6.0

                      1. oben schreib ich zu client und unten zu server.
                        client = win2000 / server = XP

                        Auf allen IE 6.0

                        ja ok, ud was sagt die Konsole?

                        Struppi.

              2. hi,

                Mein Formular in Kurzform:
                <FORM id=form1 name=form1 action=/wapla/WaPla.exe>

                keine method-angabe -> default-methode GET?

                das es dabei aufgrund von längenbeschränkungen eines URLs je nach browserzu problemen kommen kann, wenn die menge der zu übertragenden daten zu groß wird, hast du bereits bedacht?

                gruss,
                wahsaga

                --
                http://wazgnuks.net/ - back from the dead
                1. Methode get ist natürlich im "originalen" Quellcode vorhanden. Habe ich vergessen - sorry

                  1. hi,

                    Methode get ist natürlich im "originalen" Quellcode vorhanden. Habe ich vergessen - sorry

                    wie gesagt, selbst ohne diese angabe wäre GET der default gewesen.

                    aber wie sieht es mit meiner zweiten frage aus? (deren berechtigung durch deine bestätigung, dass GET zum einsatz kommt, ja noch gewachsen ist.)

                    gruss,
                    wahsaga

                    --
                    http://wazgnuks.net/ - back from the dead