zedocfilou | omega2 a écrit a écrit :
Essaye pfsockopen() D'après la doc de nexen ( www.nexen.net ), c'est comme fsockopen() à la difféence que le script appelé n'est pas tué quand on ferme la liaison.
Vu que t'as l'air de connaitre un peu le système des socket, est_ce que tu peux m'expliquer comment je dois m'y prendre pour appeler un script php sur un autre serveur (ca je pense avoir compris), lui envoyer des paramêtres et récupérer ensuite le résultat du traitement?
|
alors non je n'y connait pas grand chose au sockets. mais j'ai trouve quelque chose!! enfin pas moi mais qq d'autre. le concept est d'envoyer les parms comme lke fait un navigateur!
une soluce se trouve la :
http://www.php.net/manual/en/function.fsockopen.php
et pour t'eviter d'aller chercher betement voici le code.
Code :
- // Data to pass to the cgi script
- $name = 'John Doe';
- $email = 'johndoe@domain.com';
- $msg = 'Nice site, I love your animated gif collection!';
- // Build the request string
- $request = 'name=' . urlencode($name);
- $request .= '&email=' . urlencode($email);
- $request .= '&msg=' . urlencode($msg);
- // Build the header
- $header = "POST /guestbook/add.php3 HTTP/1.0\r\n";
- $header .= "Content-type: application/x-www-form-urlencoded\r\n";
- $header .= "Content-length: " . strlen($request) . "\r\n\r\n";
- // Open the connection
- $fp = fsockopen('www.domain.com', 80, &$err_num, &$err_msg, 30);
- if ($fp)
- {
- // Send everything
- fputs($fp, $header . $request);
- // Get the response
- while (!feof($fp))
- $response .= fgets($fp, 128);
- }
|
ce qui n'est pas pratique c'est que c'est une requete en http version 1.0, et le must have maintenant c'est le HTTP 1.1 (les puristes dirons pourquoi, en gros certains sites sont sur des serveurs avec je crois la meme ip donc sans http1.1 - la deuxieme ligne c Host : www.php.net par ex - ca ne marchera pas.
a adapter (j essaye mais j'y connait rien en HTTP)
sinon je tourne ss linux, - merci darkschneider |