FireGlow: Ugültiges Argument

Moin!

Bei folgendem Code gibt mir der IExplorer "ungültiges Argument im Zeichen 37" an. (Zeile irrelevant)
Dagegen funktionierts im Mozilla einwandfrei:

echo"function Bildergallerie(id, mtype) {";
echo"MeinFenster =";
echo"window.open('Bildergallerie.php?lang=".$lang."&bild=0&type='+mtype+'&id='+id+'', 'TuningDreams - Bildergallerie', 'width=710,height=415');";
echo"MeinFenster.focus();";
echo"}";

Aufgerufen wird das ganze so:

javascript:Bildergallerie(1129835607, "Produkte");

MfG

Anton Brass

  1. Hi,

    echo"function Bildergallerie(id, mtype) {";
    echo"MeinFenster =";
    echo"window.open('Bildergallerie.php?lang=".$lang."&bild=0&type='+mtype+'&id='+id+'', 'TuningDreams - Bildergallerie', 'width=710,height=415');";
    echo"MeinFenster.focus();";
    echo"}";

    das ist kein JavaScript-Code... Zeig mal bitte den Quelltext her, der am Ende dabei rauskommt, dann können wie weiter suchen. Davon abgesehen, du hast da Leerzeichen (oder besser zwei) im Fensternamen, das ist verboten...

    MfG
    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
    1. Ausgabe Quellcode:

      <script type="text/javascript">function Bildergallerie(id, mtype) {MeinFenster=window.open('Bildergallerie.php?lang=de&bild=0&type='+mtype+'&id='+id,'TuningDreams - Bildergallerie','width=710,height=415');MeinFenster.focus();}

      Hab das href auf onclick geändert, der Fehler bleibt gleich, da das Problem nicht das Aufrufen der Funktion ist, sondern es irgendwo ne total bloedsinnige Formatierung gibt, den der IExplorer net schluckt.

      1. <script type="text/javascript">function Bildergallerie(id, mtype) {MeinFenster=window.open('Bildergallerie.php?lang=de&bild=0&type='+mtype+'&id='+id,'TuningDreams - Bildergallerie','width=710,height=415');MeinFenster.focus();}

        Grmpf, noch einer, der’s schick findet, sämtlichen Code in eine Zeile zu schreiben.

        Ich mach das mal lesbar:

        function Bildergallerie(id, mtype) {  
          MeinFenster=window.open(  
            'Bildergallerie.php?lang=de&bild=0&type=' + mtype + '&id='+id,  
            'TuningDreams - Bildergallerie',  
            'width=710,height=415');  
          MeinFenster.focus();  
        }
        

        Und dann lies dir mal bitte nochmal das Posting durch, auf das du gerade geantwortet hast. Oder das in SELFHTML zu http://de.selfhtml.org/javascript/objekte/window.htm#open@title=window.open() unter 2. Gesagte.

        Live long and prosper,
        Gunnar

        --
        „Weisheit ist nicht das Ergebnis der Schulbildung, sondern des lebenslangen Versuchs, sie zu erwerben.“ (Albert Einstein)
        1. "Grmpf, noch einer, der’s schick findet, sämtlichen Code in eine Zeile zu schreiben."

          Soory, falls du gemerkt hast, das ist alles noch in PHP eingebetet, und 6-7 echos mehr zu machen ist mehr als nervig.

          "Und dann lies dir mal bitte nochmal das Posting durch, auf das du gerade geantwortet hast. Oder das in SELFHTML zu window.open() unter 2. Gesagte."

          Ich habe alle überflüssigen Leerzeichen gekillt, und ich habe den Fehler immer noch. Habe mir auch nocheinmal den SELFHTML-Forums-Beitrag durchgelesen und sehe meinen Fehler nicht, schon allein weil der Fehler wohl in der Zieladresse zu suchen ist, da diese aus mehreren Variablen und Text besteht und net nur aus einer einzelnen Variable wie im Beispiel.

          Habe nun sogar den Fenstername rausgemacht, und der Fehler ist immer noch da.

          1. Habe nun sogar den Fenstername rausgemacht, und der Fehler ist immer noch da.

            Kannst du das mal auf ein nicht funktionierenden Code, den man nachvollziehen kann kürzen?

            Der Code den du bisher gezeigt hast inkl. der von dir genannten Änderungen funktioniert.

            Struppi.

            1. Jo im FireFox funktioniert der, im Explorer komischerweise net x_X.

              1. Jo im FireFox funktioniert der, im Explorer komischerweise net x_X.

                Doch tut er.

                Struppi.

                1. Doch tut er.

                  Struppi.

                  Jetzt haste michi argumentativ überzeugt, schade, dass der selbe Code bei mir in der Website nicht funktioniert, nicht mal einzeln.

                  function Bildergallerie(id, mtype) {
                    MeinFenster=window.open(
                      'Bildergallerie.php?lang=de&bild=0&type=' + mtype + '&id='+id,
                      'TuningDreams - Bildergallerie',
                      'width=710,height=415');
                    MeinFenster.focus();
                  }

                  Das ungültige Argument sei angeblich zwischen dem "{" und MeinFenster. Bzw angeblich das MeinFenster selbst.

                  1. Hallo,

                    function Bildergallerie(id, mtype) {
                      MeinFenster=window.open(
                        'Bildergallerie.php?lang=de&bild=0&type=' + mtype + '&id='+id,
                        'TuningDreams - Bildergallerie',
                        'width=710,height=415');
                      MeinFenster.focus();
                    }
                    Das ungültige Argument sei angeblich zwischen dem "{" und MeinFenster. Bzw angeblich das MeinFenster selbst.

                    ja, du hast ja auch _immer noch_ die unzulässigen Leerzeichen im Fensternamen (der Minus-Strich ist IMHO auch heikel). Verwechselt du etwa den Fensternamen mit dem Titel? Wähle einen kurzen, prägnanten Namen, und gut.

                    So long,
                     Martin

                    --
                    Man soll den Tag nicht vor dem Abend loben.
                    Und den Mann nicht vor dem Morgen.
                      (alte Volksweisheit)
                    1. »»Verwechselt du etwa den Fensternamen mit dem Titel? Wähle einen kurzen, prägnanten Namen, und gut.

                      Jo daran lags, hab gedacht das wäre der Titel. Leerzeichen hatte ich schon weg, lag wohl dann am Bindestrich.

                      Danke.

                  2. Doch tut er.

                    Struppi.

                    Jetzt haste michi argumentativ überzeugt, schade, dass der selbe Code bei mir in der Website nicht funktioniert, nicht mal einzeln.

                    Immer diese müsigen threads :-(

                    Ein kurzer Blick in selfhtml unter window.open() hätte schon genügt:

                    Fenstername = Ein Name, der aus Buchstaben, Ziffern und Unterstrich bestehen darf.

                    Dann behauptest du es würde nicht funktionieren und du hättest sogar den Fensternamen enfernt. https://forum.selfhtml.org/?t=122989&m=791653

                    Ein bisschen gedankliche Transferleistung und dich hätte schon der Hinweis von Rouven auf die Lösung gebracht.

                    Struppi.

          2. echo $begrüßung;

            "Grmpf, noch einer, der’s schick findet, sämtlichen Code in eine Zeile zu schreiben."

            Soory, falls du gemerkt hast, das ist alles noch in PHP eingebetet, und 6-7 echos mehr zu machen ist mehr als nervig.

            Für längere Abschnitte kennt PHP die Heredoc-Syntax.

            Und lass bitte die Zitatzeichen so stehen, wie sie stehen. Danke.

            echo "$verabschiedung $name";

  2. Bildergallerie

    FireGlow, aua.

    Aufgerufen wird das ganze so:
    javascript:Bildergallerie(1129835607, "Produkte");

    Aua. Du meinst so?
      <a href='javascript:[code lang=javascript]Bildergallerie(1129835607, "Produkte");'>[/code]

    javascript ist kein Protokoll, JavaScript-Code hat in einem URI so nichts zu suchen.

    Richtig[tm] aufgerufen wird’s so:
      <a href="foo.html" onclick='[code lang=javascript]Bildergallerie(1129835607, "Produkte"); return false;'>[/code]

    Wobei hinter foo.html die Ressource steht, die auch für Nutzer ohne JavaScript den Inhalt verfügbar macht.

    Live long and prosper,
    Gunnar

    --
    „Weisheit ist nicht das Ergebnis der Schulbildung, sondern des lebenslangen Versuchs, sie zu erwerben.“ (Albert Einstein)