Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Java » Frage zu Internet+Netzwerk Programmierung

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
02.05.2006, 19:17 Uhr
mauralix



Also ich habe ein Programm geschrieben mit dem ich den HTML-Code einer Seite kriege.

import java.io.*;
import java.net.*;

public class Bla
{

public static void main(String[] args) throws Exception
{

URL url;

String curr="pp";

url=new URL("http://localhost/database/login.php?un=A&"+curr);

URLConnection con=url.openConnection();

InputStream in=con.getInputStream();

int c;

while((c=in.read())!=-1)
{
System.out.write((byte)c);
}

}

}

Jetzt ist das Problem nur dass ich zwar den Quellcode der HTML datei kriege jedoch, schreibt dass php skript noch zurück endweder richtig oder falsch. und diesen Teil kann ich nicht mehr auslesen.

Dies ist das php-skript.


<html>
<head>
<title>Login</title>

</head>

<body>
<form name="form1" method="post" action="<? echo $PHP_SELF; ?>">
<table width="200" border="0">
<caption>
<h1> Login </h1>
</caption>
<tr>
<td>Username:</td>
<td><input name="un" type="text" id="un"></td>
</tr>
<tr>
<td>Password:</td>
<td><input name="pw" type="password" id="pw"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><center><input name="Submit" type="submit" value="login">
</center></td>
</tr>
</table>
</form>

</body>
</html>

<?php

if(($un!="")&&($pw!=""))
{
$db=mysql_connect();
$res=mysql_db_query("mydatabase","select Password from user where Username='$un'",$db);

if(mysql_num_rows($res))
{
$dbpw=mysql_result($res,0,"Password");
echo $dbpw;

if($dbpw==$pw)
{
echo "<br> <strong> Password korrekt !!! </strong> <br>";
}
else
echo "<br> Leider falsch!!! <br> ";
}
else echo "<br> $un existiert nicht !!! <br> ";
}
else echo "<br>ausfüllen<br>"

?>

Außerdem würde mich noch interressieren man die Read-methode ewig wartet und wann nicht. Man kann zwar mit setSoTimout ein Timeout einstellen jedoch ist dies manchmal nicht von Nöten da sowieso nicht gewartet wird.
--
nur olfaktorisch fassbar....
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.05.2006, 20:46 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Mal ganz davon abgesehen, das dein PHP Code Fehlerhaft ist (Ausgabe nach </html) und du die Code Tags vergessen hast, kann dein Java Code so gar nicht gehen. Du willst etwas eintragen, das geht nur, wenn du eine Browserumgebung simulierst. Das ist eine menge aufwand und ich weiß auch nicht, ob das in Java einfach so machbar ist. Dein Code lädt nur runter, damit kannst du nichts in Formulare eintragen !
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
02.05.2006, 20:53 Uhr
KaraHead



Das hat meiner Meinung nach nix mit Java zu tun.
Deine PHP Anweisungen stehen weder in einer Funktion, die du aufrufst, noch sind sie innerhalb der <body></body> Tags.
Somit wird deine PHP Ausgabe nie angezeigt.


Zitat:

Zu spät


Dieser Post wurde am 02.05.2006 um 20:54 Uhr von KaraHead editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
02.05.2006, 20:57 Uhr
KaraHead



@mauralix
Was hast du denn vor? Willst du die Seite nur runterladen oder ihr Daten übergeben oder nur interpretieren oder oder oder?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
02.05.2006, 22:36 Uhr
mauralix



Also hallo nochmal, mir tut es zwar schrecklich Leid, dass ich die Code-tags vergessen habe und nur stiefmütterlich mein Problem beschrieben habe, dies liegt aber daran, dass mir meine Schule nur sowenig Zeit lässt. Und außerdem ist der Code nicht fehlerhaft er ist schon richtig nur tut er noch nicht alles was ich will.

Also ich will nichts in Formulare schreiben oder irgendwelche anderen Monsterdinge anstellen ich will bloß den Quelltext kriegen, den man sonst bei seinem Browser unter Quelltext anzeigen sieht.
Dies funktioniert ja schon nur schreibt das PHP als Antwort wenn man, dass Formular abschickt entweder

$un existiert nicht !!! oder ausfüllen oder Password korrekt !!!

und diesen Text krieg ich nicht mehr.

Vielleicht hilft euch, dass schon weiter. Das php skript ist doch nur als Beispiel für mich zum Testen dies geht dann natürlich für jede X-beliebige Seite.
--
nur olfaktorisch fassbar....
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
02.05.2006, 22:54 Uhr
mauralix



Hey ihr wart mir wieder mal ne Hilfe.
Der Fehler lag wirklich im php skript.

Und zwar beginnt der php teil erst nach dem </html>
Mein Programm bekommt die Zeilen die dann folgen leider nicht mehr, obwohl firefox und der internet explorer das wohl noch anzeigen...
--
nur olfaktorisch fassbar....
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
03.05.2006, 01:18 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Na, was hab ich gesagt?
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
03.05.2006, 17:12 Uhr
mauralix



So...
Jetzt ist da s blöde, die Möglichkeit mit den URLs würde mir ja gefallen...
Aber da krieg ich immer ausfüllen zurück. Das heißt der nimmt meine übergebenen Werte nicht an.

Wenn ich allerdings eine Verbindung zum Webserver über Sockets aufbaue funktioniert alles perfekt. Was ich aber gern noch haben möchte wäre, dass ich vom Server als Antwort nur $un existiert nicht !!! oder ausfüllen oder Password korrekt !!! zurück bekomme.
Da hab ich allerdings keine Ahnung wie dass gehen soll. Bei den URLs gibts ja die Möglichkeit, dass ich z.B nur den Header zurückbekomme.


Mein bisheriger Code mit den Sockets.


C++:

public static void main(String[] args) throws Exception
    {
        Socket s=new Socket("localhost",80);
        
        InputStream in=s.getInputStream();
        OutputStream out=s.getOutputStream();
        
        String get = "GET " + "/database/login?un=A&pw=pp" + " HTTP/1.0" + "\r\n\r\n";
        
        out.write(get.getBytes());
        
        int c;
        
        while((c=in.read())!=-1)
        {
            System.out.write((byte)c);
        }
        
        in.close();
        out.close();
    }



--
nur olfaktorisch fassbar....
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
05.05.2006, 16:45 Uhr
mauralix



Eine andere Frage...

so frägt man einen Webserver ab:


C++:
String get = "GET " + "/database/login?un=A&pw=pp" + " HTTP/1.0" + "\r\n\r\n";



Wie würde das bei FTP ausschauen?
--
nur olfaktorisch fassbar....
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
06.05.2006, 12:36 Uhr
mauralix



hat sich schon erledigt nachdem ich mir den Aufbau des FTP angeschaut habe.
--
nur olfaktorisch fassbar....
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ Java ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: