Aus Java-Applets heraus in Dateien schreiben: Unterschied zwischen den Versionen
Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springenK |
K |
||
(4 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | |||
[[Kategorie:Tutorials (Java)]] | [[Kategorie:Tutorials (Java)]] | ||
[[Kategorie:PHP]] | [[Kategorie:PHP]] | ||
− | [[Kategorie:Java | + | [[Kategorie:Java Applets]] |
[[Kategorie:PHP-Codeschnipsel]] | [[Kategorie:PHP-Codeschnipsel]] | ||
Zeile 10: | Zeile 9: | ||
'''Der Java-Quellcode von applet.class:''' | '''Der Java-Quellcode von applet.class:''' | ||
− | < | + | <syntaxhighlight lang="java"> |
import java.applet.*; | import java.applet.*; | ||
import java.net.*; | import java.net.*; | ||
Zeile 41: | Zeile 40: | ||
String url = home.toString()+"php.php?var1="+tf.getText(); | String url = home.toString()+"php.php?var1="+tf.getText(); | ||
getAppletContext().showDocument(new URL(url)); | getAppletContext().showDocument(new URL(url)); | ||
− | } catch(Exception x) {} | + | } catch(Exception x) { |
+ | System.err.println(x); | ||
+ | } | ||
} | } | ||
} | } | ||
− | </ | + | </syntaxhighlight> |
'''Der PHP-Quellcode von php.php:''' | '''Der PHP-Quellcode von php.php:''' | ||
− | < | + | <syntaxhighlight lang="php"> |
<APPLET CODE="Schreiben.class" WIDTH="600" HEIGHT="450"> | <APPLET CODE="Schreiben.class" WIDTH="600" HEIGHT="450"> | ||
<?php | <?php | ||
Zeile 55: | Zeile 56: | ||
fclose($datei); | fclose($datei); | ||
?> | ?> | ||
− | </ | + | </syntaxhighlight> |
Im obigen Applet wird - | Im obigen Applet wird - | ||
Zeile 61: | Zeile 62: | ||
- ein String erzeugt wo '''home''' in eine String geparst wird, der Name des PHP-Scripts angegeben wird, welches geladen werden soll, der Text aus dem Textfeld geholt und an die URL des PHP-Scripts angehängt. | - ein String erzeugt wo '''home''' in eine String geparst wird, der Name des PHP-Scripts angegeben wird, welches geladen werden soll, der Text aus dem Textfeld geholt und an die URL des PHP-Scripts angehängt. | ||
− | Im PHP-Script werden die Variablen einfach mit der Methode <code>$HTTP_GET_VARS</code> | + | Im PHP-Script werden die Variablen einfach mit der Methode <code>$HTTP_GET_VARS</code> hineingeholt und können dann weiter verarbeitet werden. |
So, hoffe das hilft irgend jemandem mal weiter :D | So, hoffe das hilft irgend jemandem mal weiter :D | ||
− | [[Benutzer:bullzEye|bullzEye]] | + | --[[Benutzer:bullzEye|bullzEye]] |
Aktuelle Version vom 19. April 2020, 17:20 Uhr
Problem: Wie kann ich etwas von einem Applet aus (welches nicht signiert ist) in eine Datei schreiben?
Meine Lösung ( mit Anregung von Bleiglanz und Grizzly :D ) :
Der Java-Quellcode von applet.class:
import java.applet.*;
import java.net.*;
import java.awt.*;
import java.awt.event.*;
public class Schreiben
extends Applet
implements ActionListener
{
// Variablen
private TextField tf;
private Button bu;
public void init() {
setLayout(new BorderLayout());
// Komponenten
tf = new TextField();
bu = new Button("schreiben");
bu.addActionListener(this);
this.add(tf, BorderLayout.CENTER);
this.add(bu, BorderLayout.SOUTH);
}
// Ergeignisse
public void actionPerformed(ActionEvent aevt) {
try {
URL home = getCodeBase();
String url = home.toString()+"php.php?var1="+tf.getText();
getAppletContext().showDocument(new URL(url));
} catch(Exception x) {
System.err.println(x);
}
}
}
Der PHP-Quellcode von php.php:
<APPLET CODE="Schreiben.class" WIDTH="600" HEIGHT="450">
<?php
$var1 = $_GET['var1'];
$datei = fopen("datei.txt", "a");
fputs($datei, $var1);
fclose($datei);
?>
Im obigen Applet wird -
- mit URL home = getCodeBase();
das Verzeichnis des Applets herausgefunden.
- ein String erzeugt wo home in eine String geparst wird, der Name des PHP-Scripts angegeben wird, welches geladen werden soll, der Text aus dem Textfeld geholt und an die URL des PHP-Scripts angehängt.
Im PHP-Script werden die Variablen einfach mit der Methode $HTTP_GET_VARS
hineingeholt und können dann weiter verarbeitet werden.
So, hoffe das hilft irgend jemandem mal weiter :D
--bullzEye