Ankündigung

Einklappen
Keine Ankündigung bisher.

Parameter an Java-Applet weitergeben

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Parameter an Java-Applet weitergeben

    Guten Tag,
    ich habe ein kleines Problem.
    Und zwar bin ich ein absoluter Noob in PHP, benötige aber für ein kleines Webseiten-Projekt von mir etwas Hilfe.
    Ich möchte eine PHP-Seite aufrufen mit folgenen Parametern:
    ...emulator.php?system=CPC6128&disc=diskette1.dsk& boot=program
    etc....
    in der emulator.php müssten dann diese Werte an ein Java-Applet übergeben werden...
    Code:
    <param name="SYSTEM" value="CPC6128">
    <param name="DISC" value="diskette1.dsk">
    <param name="AUTOLOAD" value="program">
    So sehen diese Werte aus, wenn sie manuell eingegeben werden...
    Wie kann man das nun mit PHP automatisieren?
    Vielen Dank für Eure Hilfe,
    Markus


  • #2
    PHP-Code:
    echo "<param name=\"SYSTEM\" value=\"".$_GET['system']."\">";
    echo 
    "<param name=\"DISC\" value=\"".$_GET['disc']."\">";
    echo 
    "<param name=\"AUTOLOAD\" value=\"".$_GET['autoload']."\">"
    So sollte das aussehen. Musst halt über die $_GET Variablen auf die Url zugreifen. In der Lösung wird aber gerade kein Wert auf Sicherheit gelegt.

    Kommentar


    • #3
      Hallo SJahr,
      Danke schonmal...
      Wie baue ich denn eine $_GET ein?
      Ich habe wirklich null Plan von PHP...

      Oder wäre das alles, was ich an Code einsetzen müsste?

      Gruss, Markus

      Kommentar


      • #4
        Das wäre alles was du einsetzen musst.Allerdings kann der ein Benutzer bei meiner Lösung Schabernack treiben.

        Aber wenn du keine Ahnung von PHP hast, würde ich mir erstmal die Grundlagen von PHP anlernen, bevor es benutzt wird.

        Kommentar


        • #5
          Ok danke.
          Schabernack wäre eigentlich kaum nützlich für jemanden, weil schliesslich nur Parameter übergeben werden sollen.
          Da kann also jemand auch Franz Meier angeben oder sonstwas, dann würde nur ein leerer Emulator erscheinen... Es kann eh nur auf Dateien zugegriffen werden per Parameter, die auf dem Server liegen...
          MfG
          Markus

          Kommentar


          • #6
            Ich meinte auch nicht mit deinem Programm, sondern eher mit PHP. Das ist ja eine Sicherheitslücke, weil die Parameter aus der URL ohne Überprüfung benutzt werden.

            Kommentar


            • #7
              Ah ok.
              Ist es einfach, diese überprüfen zu lassen?

              Kommentar


              • #8
                Kommt immer drauf an was du überprüfen willst.

                #php/QuakeNet Tutorial - Einführung

                Das ist meiner Meinung nach eine gute Einführung in PHP. Viel Spaß beim lesen

                Kommentar


                • #9
                  Habe mal schnell ein Beispiel auf die Beine gestellt:
                  JavaCPC Emulator

                  Der Code in der emulator.php ist hier:
                  Code:
                  
                  <html>
                  <head>
                  <script src="javacpc_init.js" type="text/javascript"></script>
                  <title>JavaCPC Emulator</title>
                  </head>
                  <body bgcolor="#000000">
                  <form name=frmSelect method=post>
                  <div align="center">
                   
                  <?php
                  echo "<applet name=\"JEMU\" width=\"384\" height=\"274\" code=\"jemu.ui.JEMU.class\" codebase=\"jemu/\">";
                  echo "<param name=\"archive\" value=\"JavaCPC.jar\">";
                  echo "<param name=\"SELECTOR\" value=\"false\">";
                  echo "<param name=\"BUTTONS\" value=\"false\">";
                  echo "<param name=\"BORDER\" value=\"false\">";
                  echo "<param name=\"SKINNED\" value=\"false\">";
                  echo "<param name=\"OSD\" value=\"false\">";
                  echo "<param name=\"LARGE\" value=\"false\">";
                  echo "<param name=\"COMPUTER\" value=\"".$_GET['system']."\">";
                  echo "<param name=\"DISC\" value=\"".$_GET['disc']."\">";
                  echo "<param name=\"AUTOLOAD\" value=\"".$_GET['boot']."\">"; 
                  echo "</applet>";
                  ?>
                  <br>
                  <button type="button" onclick="document.JEMU.resetComputer();">Reset</button>
                  <br>
                  <input name="cbAudio" type="Checkbox" onClick="toggleAudio();" value="1" checked style="font-weight: 700"><font color="#FFFF00"><b> Audio
                  </b>
                  <input name="cbJoy" type="Checkbox" onClick="toggleJoystick();" value="2" style="font-weight: 700"><b> Q,A,O,P - SPACE/CTRL Joystick
                  </b>
                  <input name="cbDoubleSize" type="Checkbox" onClick="toggleDoubleSize();" value="3" style="font-weight: 700"><b>Double size </b>
                  <input name="cbFullSize" type="Checkbox" onClick="toggleFullSize();" value="1" style="font-weight: 700"><b>Full GateArray</button></b>
                  </font>
                  </form>
                  </div>
                  </body>
                  </html>

                  Kommentar


                  • #10
                    Wie kann ich denn checken, ob ein Parameter gesetzt wurde?
                    Wenn z.b. der Parameter "system" nicht gesetzt wurde, dass er dann automatisch "CPC6128" lautet?

                    Kommentar


                    • #11
                      Tut mir leid, dabei werde ich dir nun nicht helfen. Das hier ist ein Forum, dass einem helfen soll, falls man Fragen zu PHP hat. Du hast aber keine Ahnung von PHP und suchst jemand der dir dein Script schreibt.

                      Kommentar


                      • #12
                        Also ich hab mal herumgewerkelt....
                        Dabei habe ich dieses eingebaut:

                        PHP-Code:
                        <?php
                        if (!empty($_GET['system'])){
                        $system $_GET['system'];
                        } else {
                        $system 'CPC464';
                        }
                        if (!empty(
                        $_GET['boot'])){
                        $boot $_GET['boot'];
                        } else {
                        $boot '~none~';
                        }
                        if (!empty(
                        $_GET['patch'])){
                        $patch $_GET['patch'];
                        } else {
                        $patch 'false';
                        }
                         
                        echo 
                        "<applet name=\"JEMU\" width=\"384\" height=\"274\" code=\"jemu.ui.JEMU.class\" codebase=\"jemu/\">";
                        echo 
                        "<param name=\"archive\" value=\"JavaCPC.jar\">";
                        echo 
                        "<param name=\"SELECTOR\" value=\"false\">";
                        echo 
                        "<param name=\"BUTTONS\" value=\"false\">";
                        echo 
                        "<param name=\"BORDER\" value=\"false\">";
                        echo 
                        "<param name=\"SKINNED\" value=\"false\">";
                        echo 
                        "<param name=\"OSD\" value=\"false\">";
                        echo 
                        "<param name=\"LARGE\" value=\"false\">";
                        echo 
                        "<param name=\"COMPUTER\" value=\"".$system."\">";
                        echo 
                        "<param name=\"CPATCH\" value=\"".$patch."\">";
                        if (!empty(
                        $_GET['disc'])){
                        echo 
                        "<param name=\"DISC\" value=\"".$_GET['disc']."\">";
                        }
                        echo 
                        "<param name=\"AUTOLOAD\" value=\"".$boot."\">"
                        echo 
                        "</applet>";
                        ?>
                        Ich denke, es sollte so ok sein oder?
                        MfG
                        Markus

                        Kommentar


                        • #13
                          So helf ich dir gerne.

                          Ja sollte ok sein. Wieso probierst es net einfach?

                          Kommentar


                          • #14
                            Zitat von SJahr Beitrag anzeigen
                            Ja sollte ok sein. Wieso probierst es net einfach?
                            Hehehe danke!
                            Das Problem ist, dass ich doch in einigem Zeitdruck stecke (freiwilligem)
                            Schliesslich möchte ich den Usern meiner Webseite auch schnell viele Spiele zur Verfügung stellen.
                            Dies hatte ich bislang immer so gemacht, dass ich immer nur für jedes Spiel eine HTML Seite gemacht hatte (Sind schon über 200 Seiten *grins*)
                            Drum dachte ich mir, ich versuch mal, das Ganze mit PHP zu vereinfachen...
                            So brauche ich dann nur noch in meinem Content ein paar Parameter angeben, fertig

                            Trotzdem nochmal danke für die schnelle Hilfe!
                            Werde mal schauen, was ich davon verwenden kann.
                            Vielleicht kann ich es ja irgendwie mit meiner SQL Datenbank verknüpfen....

                            Gruss, Markus

                            P.S.: Jeder ist natürlich gern eingeladen, meine Seite zu besuchen und auch viele Spiele dort mal wieder an einem alten Homecomputer (In JAVA von mir emuliert) zu zocken

                            Nu aber genug Werbung *duck&versteck*

                            Kommentar


                            • #15
                              Nochmal eine kleine Änderung:
                              PHP-Code:
                              <?php
                              $system 
                              = !empty($_GET['system']) ? $_GET['system'] : 'CPC464'
                              $boot = !empty($_GET['boot']) ? $_GET['boot'] : '~none~'
                              $patch = !empty($_GET['patch']) ? $_GET['patch'] : 'false'
                               
                              echo 
                              "<applet name=\"JEMU\" width=\"384\" height=\"274\" code=\"jemu.ui.JEMU.class\" codebase=\"jemu/\">";
                              echo 
                              "<param name=\"archive\" value=\"JavaCPC.jar\">";
                              echo 
                              "<param name=\"SELECTOR\" value=\"false\">";
                              echo 
                              "<param name=\"BUTTONS\" value=\"false\">";
                              echo 
                              "<param name=\"BORDER\" value=\"false\">";
                              echo 
                              "<param name=\"SKINNED\" value=\"false\">";
                              echo 
                              "<param name=\"OSD\" value=\"false\">";
                              echo 
                              "<param name=\"LARGE\" value=\"false\">";
                              echo 
                              "<param name=\"COMPUTER\" value=\"".$system."\">";
                              echo 
                              "<param name=\"CPATCH\" value=\"".$patch."\">";
                              if (!empty(
                              $_GET['disc'])){
                              echo 
                              "<param name=\"DISC\" value=\"".$_GET['disc']."\">";
                              }
                              echo 
                              "<param name=\"AUTOLOAD\" value=\"".$boot."\">"
                              echo 
                              "</applet>";
                              ?>
                              Ist die etwas kürzere Variante...

                              Kommentar

                              Lädt...
                              X