Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Portal > Foren > Java > Allgemeine Java-Programmierung > Java Applet soll Daten an ein PHP Script senden

Layoutprobleme? - Styleswitcher!

Antwort
 
Themen-Optionen
Alt 18.04.2007, 09:47 Nach oben    #1
flanger
Neuer Benutzer
 
Registriert seit: 18.04.2007
Beiträge: 3
Standard Java Applet soll Daten an ein PHP Script senden

Hallo,

bin neu hier und Java Anfänger.

Ich bin dabei ein Java Applet zu programmieren welches Daten an ein PHP Script senden soll, um diese Daten später zu verarbeiten (PHP+MySQL).

Ich bin dabei auf dieses Tutorial gestoßen:
[JAVA] Wie man aus Java mit einem PHP-Script kommuniziert

Mein Applet soll die Seite test.php aufrufen und eine E-mail an mich mit der Post Variablen "string" senden, damit ich sehe das es klappt.
Später will ich die Daten in eine MySQL DB einfliessen lassen.
Und ich will das ohne JDBC Treiber realisieren.

test.php hat alle Rechte auf dem Server

Aber irgendwie geht das nicht.
Jemand ne Ahnung was ich falsch mache ?
Signieren muß ich das Applet ja nicht ?

"UrlPost.java"
PHP-Code:
import java.applet.*;
import java.net.*;
import java.io.*;

public class 
UrlPost
extends Applet{

    
String data="string=test";

    public 
void init(){
        try{
            
URL url=new URL("http://www.meineurl.com/java/test.php");
            
URLConnection urlcon=url.openConnection();
            
urlcon.setDoOutput(true);
            
            
OutputStream out=urlcon.getOutputStream();
            
out.write(data.getBytes());
            
out.flush();
        }
        catch(
IOException e){
            
System.out.println("KO");
        }
    }

"UrlPost.htm"
HTML-Code:
<html> <head> <title>applet</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <body> <applet  code="UrlPost.class" width="600" height="500"></applet> </body> </html>
"test.php"
PHP-Code:
<?php

$str
='POST'.$_POST['string'];
mail('meine@Email.com','UrlPostString','text'.$str);

?>

Geändert von flanger (18.04.2007 um 09:52 Uhr).
flanger ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.04.2007, 11:06 Nach oben    #2
flanger
Neuer Benutzer
 
Registriert seit: 18.04.2007
Beiträge: 3
Standard

Ich habe mir mal in der Konsole folgendes ausgeben lassen:

PHP-Code:
System.out.println("protocol: "+url.getProtocol());
System.out.println("host: "+url.getHost());
System.out.println("port: "+url.getPort());
System.out.println("path: "+url.getPath());
System.out.println("file: "+url.getFile());
System.out.println("ref: "+url.getRef()); 
Ergebnis in der Konsole:
===========================================
MRJ Plugin for Mac OS X v1.0.1
[starting up Java Applet Security @ Wed Apr 18 10:47:35 CEST 2007]
Wed Apr 18 10:47:36 CEST 2007 JEP creating applet UrlPost (http://www.meinurl.be/java/)
protocol: http
host: www.meinurl.be
port: -1
path: /java/test.php
file: /java/test.php
ref: null
daten wurden gesendet
===========================================

port = -1 ??? (ist das ein Problem)
müßte doch 80 bei http sein !

Kann es daran liegen das wir mit Proxy Servern Arbeiten ?
flanger ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.04.2007, 15:09 Nach oben    #3
xabbuh
Benutzer
 
Benutzerbild von xabbuh
 
Registriert seit: 03.12.2005
Ort: Osnabrück
Beiträge: 73
Standard

Hallo,

möglich, dass das dein Problem ist. Hast du schon mal statt URL.openConnection() URL.openConnection(Proxy) ausprobiert?

Gruß
Christian
xabbuh ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.04.2007, 09:21 Nach oben    #4
flanger
Neuer Benutzer
 
Registriert seit: 18.04.2007
Beiträge: 3
Standard

Also am Proxy liegt es nicht.

Ich habe mal ein Applet programmiert welches mir eine Website ausliesst und in der Konsole ausgibt.
Funktioniert alles ohne Probleme:
PHP-Code:
import java.applet.*; 
import java.net.*; 
import java.io.*; 
 
public class 
UrlRead 
extends Applet
 
   
String data="string=test"
   
HttpURLConnection connection=null
   
URL url
    
   public 
void init(){ 
      try{ 
         
url=new URL("http://www.myurl.be:80/java/read.php"); 
         
BufferedReader input=new BufferedReader(new InputStreamReader(url.openStream())); 
         
String zeile
          
         while((
zeile=input.readLine())!=null){ 
            
System.out.println(zeile); 
         } 
         
input.close(); 
           } 
       
      catch (
MalformedURLException e){ 
         
e.printStackTrace(); 
      } 
       
      catch (
IOException e){ 
         
e.printStackTrace(); 
      } 
   } 

Aber senden geht nach wie vor nicht !
Wenn es funkionieren würde müßte doch der PHP code ausgeführt werden !?

Oder werden nur Daten hin und her gesendet ?

PHP-Code:
import java.applet.*;
import java.net.*;
import java.io.*;

public class 
UrlPost
extends Applet{

    
String data="string=test";
    
HttpURLConnection connection=null;
    
URL url;
    
    public 
void init(){
        try{
            
url=new URL("http://www.myurl.be:80/java/test.php");
            
            
System.out.println("protocol: "+url.getProtocol());
            
System.out.println("host: "+url.getHost());
            
System.out.println("port: "+url.getPort());
            
System.out.println("path: "+url.getPath());
            
System.out.println("file: "+url.getFile());
            
System.out.println("ref: "+url.getRef());
            
            
connection=(HttpURLConnection)url.openConnection();
            
connection.setRequestMethod("POST");
            
connection.setDoOutput(true);
            
PrintStream out=new PrintStream(connection.getOutputStream());
            
out.write(data.getBytes());
            
out.flush();
            
out.close();
        }
        
        catch (
MalformedURLException e){
            
e.printStackTrace();
        }
        
        catch (
IOException e){
            
e.printStackTrace();
        }
    }

flanger ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.04.2007, 10:05 Nach oben    #5
pago
Erfahrener Benutzer
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 990
Standard

Lass dir mal die ResponseMessage geben. Vielleicht muss man das Teil erst lesen, damit es übergeben wird.

Beispiel-Code, der definitiv funktioniert:
Code:
HttpURLConnection con = (HttpURLConnection)url.openConnection();
con.setDoOutput(true);
OutputStreamWriter out = new OutputStreamWriter(con.getOutputStream());
out.write("title=");
out.write(URLEncoder.encode(error.getTitle(), "UTF-8"));
out.write("&message=");
out.write(URLEncoder.encode(error.getMessage(), "UTF-8"));
out.write("&level=");
out.write(URLEncoder.encode(error.getLevel().toString(), "UTF-8"));
out.write("&java-version=");
out.write(URLEncoder.encode(System.getProperty("java.version"), "UTF-8"));
out.flush();
out.close();
return con.getResponseMessage();
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.05.2007, 16:52 Nach oben    #6
mepeisen
Martin Eisengardt
 
Registriert seit: 30.03.2006
Ort: Pfinztal
Beiträge: 353
Standard

Sicher, dass bei deinem Code eingangs keine Exception fliegt? Beispielsweise aufgrund von Sicherheitseinstellungen? Ist ja genauso auch möglich, dass dir ein SecurityManager den Zugriff aufs Netz verweigert. Kommt denn irgendeine Anfrage im Apache an? Oder kommt schon nix im Apache an? Fragen über Fragen...

Ich gebe pago recht, der Code unten funktioniert normalerweise problemlos, zumindest in einem normalen Programm. Wenn das normalerweise tut aber in einem Applett nicht, könnte das für den SecurityManager sprechen.
__________________
Open Sourcing the Online Gaming Universe
PHP/SQL/Java/C++/Assembler.
Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html
mepeisen ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

« Auf einem Server Dateien anlegen | Serieller/Parelleler Port aus Java? JNI? »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge anzufügen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
java applet variablen an php skript übergeben nibblas Desktop-Applikationen und Grafik 6 30.10.2007 16:20
PHP Script alle x Sekunden ausführen | .bat Script? dsxs Sonstige Programmiersprachen 2 03.08.2006 12:15
[JAVA] Wie man aus Java mit einem PHP-Script kommuniziert sparrow Tutorials 0 25.03.2006 23:24
Java Script & Java manuel Allgemeine Java-Programmierung 8 21.12.2005 20:58
[BUCH] Java ist auch eine Insel kampet Literatur 5 22.02.2005 15:40


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:55 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.6.7, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44