php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 19-08-2008, 15:05
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Beiträge: 642
UzumakiNaruto befindet sich auf einem aufstrebenden Ast
Standard POST simulieren

Hi Leute,

ich habe ein kleines Problem. Ich möchte gerne Daten über Post transportieren ohne ein Formular zu benutzen.

Ich habe eine Folge von Fragen, und sollte bei diesen Fragen rauskommen, das es zu einer bestimmten Frage keine Antwort gibt, soll gleich zur nächsten Seite weitergeleitet werden.

Also müsste ich jetzt mit dem simulierten POST einmal die Seite wechseln (header("Location: ") ) und dann dort die Daten mit geben.

Ich habe mir schon das Schnippsel von http://www.php-faq.de/q/q-code-post.html angesehen, aber gebracht hat es mir nichts außer dass das script nach den maximalen 60 sekunden abbricht.

PHP-Code:
191 function PostToHost($file$data) {
192    $host "http://".$_SERVER['HTTP_HOST'];
193    $referer $_SERVER["HTTP_REFERER"];
194    $fp fsockopen($host80);
195    fputs($fp"POST $file HTTP/1.1\r\n");
196    fputs($fp"Host: $host\r\n");
197    fputs($fp"Referer: $referer\r\n");
198    fputs($fp"Content-type: application/x-www-form-urlencoded\r\n");
199    fputs($fp"Content-length: "strlen($data) ."\r\n");
200    fputs($fp"Connection: close\r\n\r\n");
201    fputs($fp$data);
202    while(!feof($fp)) {
203        $res .= fgets($fp128);
204    }
205
206    fclose
($fp);
207    header("Location: ".$file);
208 }

$data "data=nichts&id=3&thisPage=seite1&nextPage=seite2;
         PostToHost("
f-seite2,$data); 
Code:
Fatal error: Maximum execution time of 60 seconds exceeded in D:\Webserver\PHP\aktenkonfigurator\functions.php on line 203
__________________
Gruß
Uzu

private Homepage
Mit Zitat antworten
  #2 (permalink)  
Alt 19-08-2008, 15:13
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Für sowas kann man doch ganz toll cURL nutzen.

mfg
Mit Zitat antworten
  #3 (permalink)  
Alt 19-08-2008, 16:00
lennart
 PHP Junior
Links : Onlinestatus : lennart ist offline
Registriert seit: May 2007
Ort: Hamburg
Beiträge: 565
lennart ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Na da kommt wohl einfach keine Antwort auf die du wartest. Hast du dir eigentlich mal angeguckt was du da machst?
Mit Zitat antworten
  #4 (permalink)  
Alt 19-08-2008, 16:07
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Beiträge: 642
UzumakiNaruto befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von lennart
Na da kommt wohl einfach keine Antwort auf die du wartest. Hast du dir eigentlich mal angeguckt was du da machst?
hmm???

im moment bastel ich mir was in curl zurecht
__________________
Gruß
Uzu

private Homepage
Mit Zitat antworten
  #5 (permalink)  
Alt 19-08-2008, 16:12
lennart
 PHP Junior
Links : Onlinestatus : lennart ist offline
Registriert seit: May 2007
Ort: Hamburg
Beiträge: 565
lennart ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von UzumakiNaruto
hmm???
PHP-Code:
202    while(!feof($fp)) {
203        $res .= fgets($fp128);
204    
Was macht das Ihrer Meinung nach, Herr Microsoft Certified?
Mit Zitat antworten
  #6 (permalink)  
Alt 19-08-2008, 16:15
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Beiträge: 642
UzumakiNaruto befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von lennart
PHP-Code:
202    while(!feof($fp)) {
203        $res .= fgets($fp128);
204    
Was macht das Ihrer Meinung nach, Herr Microsoft Certified?
öffnet die datei und ließt sie ein!.
ich bezog mich ja auf den link
__________________
Gruß
Uzu

private Homepage
Mit Zitat antworten
  #7 (permalink)  
Alt 19-08-2008, 16:16
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Was macht das Ihrer Meinung nach, Herr Microsoft Certified?
Sollte doch eigentlich die Serverantwort auslesen, solange feof bei $fp noch nicht erreicht wurde
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #8 (permalink)  
Alt 19-08-2008, 16:19
lennart
 PHP Junior
Links : Onlinestatus : lennart ist offline
Registriert seit: May 2007
Ort: Hamburg
Beiträge: 565
lennart ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von jahlives
Sollte doch eigentlich die Serverantwort auslesen, solange feof bei $fp noch nicht erreicht wurde
Und genau die wird warscheinlich einfach nicht kommen.
Mit Zitat antworten
  #9 (permalink)  
Alt 19-08-2008, 16:22
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Und genau die wird warscheinlich einfach nicht kommen.
Tja dann wäre wohl debugging angesagt.
@Uzu
fsockopen() kennt noch error Parameter und bevor du den Request abschickst solltest du schon prüfen ob fsockopen() eine gültige Ressource zurückgeliefert hat. Hast du statt dem Domainnamen mal versucht auf die lokale IP (127.0.0.1) zu verbinden.
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #10 (permalink)  
Alt 19-08-2008, 16:48
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Beiträge: 642
UzumakiNaruto befindet sich auf einem aufstrebenden Ast
Standard

fehler nummer 1: fsockopen("http........)
fehler nummer 2: Errorhp_network_getaddresses: getaddrinfo failed: Der angegebene Host ist unbekannt.

tja ... da habe ich jetzt localhost, 127.0.0.1, ws15 und den FQDN probiert .. immer die gleiche meldung.

welchen DNS server fragt der den? den ein nslookup findet den eintrag.
__________________
Gruß
Uzu

private Homepage
Mit Zitat antworten
  #11 (permalink)  
Alt 19-08-2008, 17:07
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also wenn der für 127.0.0.1 einen nslookup machen muss, dann verstehe ich die Welt ned mehr... Weil die IP Adresse ja eigentlich das Resultat eines nslookups auf den Domainnamen sein sollte
Ein
PHP-Code:
$fp fsockopen('127.0.0.1',80,$errno,$errstr); 
klappt ned?
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #12 (permalink)  
Alt 19-08-2008, 17:11
asp2php
 Banned
Links : Onlinestatus : asp2php ist offline
Registriert seit: Feb 2004
Beiträge: 11.745
asp2php ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von jahlives
Also wenn der für 127.0.0.1 einen nslookup machen muss, dann verstehe ich die Welt ned mehr... Weil die IP Adresse ja eigentlich das Resultat eines nslookups auf den Domainnamen sein sollte
Du weisst doch, dass unser Herr Microsoft Certified Professional eine andere Ausbildung hat

*SCNR*
Mit Zitat antworten
  #13 (permalink)  
Alt 19-08-2008, 17:25
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Beiträge: 642
UzumakiNaruto befindet sich auf einem aufstrebenden Ast
Standard

asp .. deine spitzen bemerkungen kannst du dir an den hut stecken
was für ein kleinkind verhalten.

zurück zum thema.

PHP-Code:
function PostToHost($file$data) {
193    $host "www.ralf-basche.home";
194    $dir substr($_SERVER['SCRIPT_NAME'],0,strrpos($_SERVER['SCRIPT_NAME'], "/")+1);
195    $referer $_SERVER["HTTP_REFERER"];
196    echo "<br>host: ".$host."<br>file: ".$file."<br>ref: ".$referer."<br>data: ".$data;
197
198    
#$ch = curl_init();
199    #curl_setopt($ch, CURLOPT_URL,$host.$file );
200    #curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
201    #curl_setopt($ch, CURLOPT_POST, 1 );
202    #curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
203    #curl_setopt($ch, CURLOPT_HEADER, 0);
204    #$response=curl_exec($ch);
205
206    
#echo $response;
207    #curl_close($ch);
208
209
210    $fp 
fsockopen($host80,$errno$errstr3);
211    echo "Error-Nr.: ".$errno."<br>Error:".$errstr;
212    fputs($fp"POST $dir.$file HTTP/1.1\r\n");
213    fputs($fp"Host: $host\r\n");
214    fputs($fp"Referer: $referer\r\n");
215    fputs($fp"Content-type: application/x-www-form-urlencoded\r\n");
216    fputs($fp"Content-length: "strlen($data) ."\r\n");
217    fputs($fp"Connection: close\r\n\r\n");
218    fputs($fp$data);
219    while(!feof($fp)) {
220        $res .= fgets($fp128);
221    }
222
223    fclose
($fp);
224    header("Location: ".$file);
225 
auf meinem debian system passiert genau das gleiche

Code:
host: www.ralf-basche.home
file: f-aufhaengung
ref: http://localhost:81/aktenkonfigurator/f-system
data: data=nichts&id=&thisPage=rueckenbreite&nextPage=aufhaengungError-Nr.: 0
Error:
PHP-Code:
$fp fsockopen('127.0.0.1',80,$errno,$errstr);
echo 
"Error-Nr.: ".$errno."<br>Error:".$errstr;
fclose($fp); 
in einer jungfräulichen php datei ergibt auch einen fehler.

Code:
Error-Nr.: 0
Error:
__________________
Gruß
Uzu

private Homepage
Mit Zitat antworten
  #14 (permalink)  
Alt 19-08-2008, 17:28
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Beiträge: 642
UzumakiNaruto befindet sich auf einem aufstrebenden Ast
Standard

nslookup bezog sich auf den FQDN .. da er ja einen findet aber php probleme damit hat.

das oben genannte problem (Error: php_network_getaddresses kam daher, das als host "127.0.0.1/ordner" drinne stand .. kein wunder das er da nichts finden konnte.
__________________
Gruß
Uzu

private Homepage
Mit Zitat antworten
  #15 (permalink)  
Alt 19-08-2008, 17:34
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Abgesehen davon ist wahrscheinlich «$file» nicht korrekt, das müsste doch ein gültiger und vom Webserver interpretierbarer Name sein.
(In deinem ersten Code gäbe das eh einen Syntax-Fehler)
Errno 0 ist natürlich korrekt, d.h. kein Fehler!
EDIT:

Seit wann ist «home» eine gültige TLD ?

__________________
Gruss
H2O

Geändert von H2O (19-08-2008 um 17:52 Uhr)
Mit Zitat antworten
Antwort

Lesezeichen


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

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 22:16 Uhr.