Schrift
[thread]398[/thread]

POST-Formular per Script bedienen (Seite 2)

Leser: 3


<< |< 1 2 3 >| >> 25 Einträge, 3 Seiten
Hahn
 2005-01-05 00:08
#3990 #3990
User since
2005-01-04
7 Artikel
BenutzerIn
[default_avatar]
hm.. das mit dem IE Wert für den UserAgent is nich so ganz einfach, habs probiert aber der lässt sich net täuschen. Ich müsste dazu wahrscheinlich genau wissen was der IE da schickt. Das LWP Modul ist aber genau das was ich brauche, aber ich schätz mal die doc gibts mal wieder nicht auf deutsch oder? Die Google Übersetzung is jedenfalls nicht der Bringer ;).
KKO
 2005-01-05 00:16
#3991 #3991
User since
2003-11-05
124 Artikel
BenutzerIn

user image
och.....komm....das schaffst du auch noch
$ua->agent('Mozilla/4.0 (compatible; MSIE 6.0; Windows 98)');
Gruß
KKO
KKO
 2005-01-05 00:18
#3992 #3992
User since
2003-11-05
124 Artikel
BenutzerIn

user image
Code: (dl )
$ua->agent('Mozilla/4.0 (compatible; MSIE 6.0; Windows 98)');
Gruß
KKO
Hahn
 2005-01-05 00:20
#3993 #3993
User since
2005-01-04
7 Artikel
BenutzerIn
[default_avatar]
maaag er nich.. mit der methode klappts nich. Wahrscheinlich steht in der doc drinne wies geht. Die werd ich mir dann in den nächsten Tagen auf Englisch geben! Thx für eure ganzen Antworten. :)
esskar
 2005-01-05 00:35
#3994 #3994
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
poste doch mal deinen code; dann kann man dir besser helfen!!!
Hahn
 2005-01-06 19:16
#3995 #3995
User since
2005-01-04
7 Artikel
BenutzerIn
[default_avatar]
so, war leider gestern weg, aber hier der Code:

============================================================

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
#!C:/Perl/bin/perl.exe

use LWP::UserAgent;
$UserAgent = LWP::UserAgent->new;

my $request = HTTP::Request->new(POST => 'http://www.ogame105.de/game/flotten1.php?session=e679b283afa6'); #Das Formular
$request->content_type('application/x-www-form-urlencoded');
$request->content('maxship210=3&consumption210=1&speed210=160000000&capacity210=5&ship210=1'); #Die Paramter

my $response = $UserAgent->request($request); #Request
print $response->as_string; #Wenn ich das richtig verstehe wird hier die Antwort geprintet???
print "\nFertig!"; #Bestätigung
<>;


============================================================================

Wenn ich das richtig verstandne habe, schickt das Script dem Server ein Request, mit den Paramtern, die ich angegeben habe. Dann bekomme ich ja eine Antwort. Wenn ich diese Antwort ausgeben lasse, krieg ich nur die gleiche site wieder, auf der das Formular ist. Warum kriege ich nich die Site, die das CGI Programm von dem Formular ausgeben sollte??\n\n

<!--EDIT|renee|1105044944-->
esskar
 2005-01-06 20:08
#3996 #3996
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
1. hab deinem code code-tags spendiert
2. kennst du use strict; use warnings; ?
3. änder mal deinen code
Code: (dl )
1
2
3
4
5
6
7
my $response = $UserAgent->request($request);  #Request
if ($response->is_success) {
print $response->content; # or whatever
}
else {
die $response->status_line;
}

und es ist besser wenn du
Code: (dl )
#!C:/Perl/bin/perl.exe
durch
Code: (dl )
#!/usr/bin/perl
ersetzt
Hahn
 2005-01-07 00:17
#3997 #3997
User since
2005-01-04
7 Artikel
BenutzerIn
[default_avatar]
jo klar kenn ich strict. Das Script funktioniert nu auch FAST. War ein dummer Fehler von mir, ich hab einen Parameter übersehen. Jetzt gibts aber einen komisches Problem:
Das Script "bedient" ein Post-Formular und kriegt die Ausgabe und kann sie auch verarbeiten ABER wenn ich mit dem IE die gleiche Site aufruf und dann Quelltext anzeigen mach, ist der Quelltext anders, als in das Script liest. Und zwar fehlt in einem Formular ein Parameter (im IE). Habt ihr ne Ahnung woran das liegen könnte? Am Host/IE/oder am Script?
Hier die wichtige Code Stelle:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
#Sehr viele Parameter....
#-------------------------------------
$parameter = "thisgalaxy=2&thissystem=328&thisplanet=6&thisplanettype=1&speedfactor=1&thisresource1=$metall&thisresource2=$kristall&thisresource3=$deuterium&galaxy=2&system=321&planet=7&planettype=1&ship210=1&consumption210=1&speed210=160000000&capacity210=5&speed=10&order=6&resource1=0&resource2=0&resource3=0";

#------------------------------------------------------

$request->content("$parameter");
$response = $UserAgent->request($request);
$file = $response->content;
print "\n$file"; #Anderst als der Quelltext im IE
pktm
 2005-01-07 00:29
#3998 #3998
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Ich bin dafür, dass du deine sehr vielen Parameter in eine Datenstruktur quetscht, die du vertikal schreiben kannst und bei Bedarf einfach mittels Schleife / join zusammen baust.  ;-)
mfg pktm

EDIT: Typo\n\n

<!--EDIT|pktm|1105050586-->
http://www.intergastro-service.de (mein erstes CMS :) )
Hahn
 2005-01-07 14:10
#3999 #3999
User since
2005-01-04
7 Artikel
BenutzerIn
[default_avatar]
werd ich wahrscheinlich auch noch tun ;).
das ding funktioniert jetzt, ich hab mir nochmal die LWP doc genauer angeschaut. Danke für eure Hilfe! ihr könnt den thread closen. Mfg Hahn :)
<< |< 1 2 3 >| >> 25 Einträge, 3 Seiten



View all threads created 2005-01-04 22:51.