| POST statt GET |
Can
Halbgott
Beiträge: 1330
|
Angenommen ich möchte mich per PHP-Script wo automatisiert einloggen, dann kann ich einfach die URL zur Loginpage mit den passenden Parametern aufrufen. Wenn die aber nur POST-Sendung akzeptiert, geht das nicht. Wie krieg ich das da hin?
---
"S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox
|
|  Profil
E-Mail
Editieren
Zitieren
|
michaelh
Forenheld
Beiträge: 1065
|
Dann musst du einfach die entsprechenden werte mit POST übergeben. Mach dir ein Formular, und stell die Werte fest ein. (Also kein Eingabefeld)
Ich würde <INPUT TYPE="hidden"> benutzen. Glaube das ging so:
<INPUT TYPE="hidden" NAME="username" VALUE="Can">
Dann einfach mit einem Submit Button übergeben. Es geht glaub ich auch mit JAVA. Das kann ich aber leider kaum.
---
Michael
Reads Mails Really Fast
rm -rf /* &
|
|  Profil
E-Mail
Website
Editieren
Zitieren
|
Der_HOmer[DE]
Quasselstrippe
Beiträge: 239
|
lass mit php das anmeldeformular füllen und nimm dann nen javascript:
1: | document.formular.submit(); |
|
|  Profil
Editieren
Zitieren
|
Can
Halbgott
Beiträge: 1330
|
Dafür brauch ich aber nen Client. Ich möchte das beispielsweise als Cronjob ausführen lassen, da kann ich nichts mit nem Formular bzw. JavaScript machen.
Ich denk eher, ich müsst ne Socket-Verbindung aufbauen oder so was...
---
"S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox
Diese Nachricht wurde geändert von: Can |
|  Profil
E-Mail
Editieren
Zitieren
|
HG
Posting-Schinder
Beiträge: 520
|
Bei PEAR gibt es einen HTTP-Client, den du mit Hilfe eines php-Objektes steuern kannst. Evtl. kann der einen POST-Request nachstellen, und dann die gewünschte Seite aus dem Netz hreauszaubern. (Leider hab ich überhaupt keine Erfahrungen damit, und es gibt auch nur sehr wenig Doku-Material dazu).
---
www.kuminatano.de
|
|  Profil
E-Mail
Website
Editieren
Zitieren
|
Can
Halbgott
Beiträge: 1330
|
Danke!! Schau ich mir gleich mal an.
---
"S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox
|
|  Profil
E-Mail
Editieren
Zitieren
|
Can
Halbgott
Beiträge: 1330
|
Hm...bin jetzt dran.
1: | echo $post->post("http://sonstwas.de","test=1"); |
"test=1" ist natürlich falsch....aber wie muss ich das bei post machen?
Ach ja: Wenn jemand noch ne einfachere Möglichkeit ohne den HTTP-Client kennt, ist mir das natürlich lieber!
Danke im Vorraus!
Can
---
" S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox
Diese Nachricht wurde geändert von: Can |
|  Profil
E-Mail
Editieren
Zitieren
|
Can
Halbgott
Beiträge: 1330
|
Ich machs jetzt doch anderst.
1:
2:
3:
4:
5:
6:
7:
8:
9: | $sock=fsockopen("sansiba.com",80);
fputs($sock,"POST /test.php HTTP/1.0\n");
fputs($sock,"Host: sansiba.com\n\n");
fputs($sock,"bla=test\n");
fputs($sock,"blu=test2\n");
fclose($sock); |
Das klappt aber auch nicht.
---
" S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox
|
|  Profil
E-Mail
Editieren
Zitieren
|
Philipp Gérard
Foren-Team
Beiträge: 1508
|
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: | #! ./php -q
<?php
function PostToHost($host, $path, $referer, $data_to_send) {
$fp = fsockopen($host, 80);
printf("Open!\n");
fputs($fp, "POST $path HTTP/1.1\n");
fputs($fp, "Host: $host\n");
fputs($fp, "Referer: $referer\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\n");
fputs($fp, "Content-length: ". strlen($data_to_send) ."\n");
fputs($fp, "Connection: close\n\n");
fputs($fp, "$data_to_send\n");
printf("Sent!\n");
while(!feof($fp)) {
$res .= fgets($fp, 128);
}
printf("Done!\n");
fclose($fp);
return $res;
}
$data = "pid=14&poll_vote_number=2";
printf("Go!\n");
$x = PostToHost(
"www.linux.com",
"/polls/index.phtml",
"http://www.linux.com/polls/index.phtml?pid=14",
$data
); |
---
Arbeit ist das Feuer der Gestaltung. - Marx
|
|  Profil
E-Mail
Website
Editieren
Zitieren
|
Can
Halbgott
Beiträge: 1330
|
Danke ^ 40 !!!!!
---
" S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox
|
|  Profil
E-Mail
Editieren
Zitieren
|