Jump to content
php.lv forumi

Kaa pareizi lietot fsockopen funkciju?


mrchinaski

Recommended Posts

Jaanosuuta mainiigie un jaasanjem atbilde - it kaa vienkaarshi, bet man nesanaak, luuk mans sacereejums:

<?php

$host = "www.sample.com";
$request = "/?name=value&name1=value1&name2=value2";

$http_response = '';

$fp = fsockopen($host, 80);
fputs($fp, "GET $request HTTP/1.1\r\n");

while (!feof($fp))
{
   $http_response .= fgets($fp, 128);
}

fclose($fp);

echo $http_response;

?>

 

Droshi vien daru kaut ko nepareizi. Plz apgaismojiet kaads..

 

Paldies.

Link to comment
Share on other sites

Neder?

 

$http_response = file_get_contents("http://www.sample.com/?name=value&name1=value1&name2=value2");
echo $http_response;

 

Vai vēl labākā gadījumā izmantot cURL

 

Paldies!

file_get_contents - nedereeja (400 Bad Request meta aaraa vislaik). Tad nu izmantoju cURL. Atradu shaadu funkciju - varbuut kaadam noder:

 

/**
* Send a GET requst using cURL
* @param string $url to request
* @param array $get values to send
* @param array $options for cURL
* @return string
*/
function curl_get($url, array $get = NULL, array $options = array())
{   
   $defaults = array(
       CURLOPT_URL => $url. (strpos($url, '?') === FALSE ? '?' : ''). http_build_query($get),
       CURLOPT_HEADER => 0,
       CURLOPT_RETURNTRANSFER => TRUE,
       CURLOPT_TIMEOUT => 4
   );

   $ch = curl_init();
   curl_setopt_array($ch, ($options + $defaults));
   if( ! $result = curl_exec($ch))
   {
       trigger_error(curl_error($ch));
   }
   curl_close($ch);
   return $result;
} 

Link to comment
Share on other sites

file_get_contents - nedereeja (400 Bad Request meta aaraa vislaik). Tad nu izmantoju cURL. Atradu shaadu funkciju - varbuut kaadam noder:

 

Tākā requestam vienīgais parametrs ir urls, tad ir skaidrs, ka ir nepareizs urls - visdrīzāk neesi http:// priekšā pielicis.

Otra lieta, urlencode url-am.

Edited by codez
Link to comment
Share on other sites

Tākā requestam vienīgais parametrs ir urls, tad ir skaidrs, ka ir nepareizs urls - visdrīzāk neesi http:// priekšā pielicis.

 

hmm urls it kaa pareizs ar http:// priekshgalaa.........

 

ja ja urlencode visu atrisinijaa.muuzhu dziivo muuzhu maacies.

 

Paldies codez un briedim!

 

P.S kuru variantu labaak izmantot - vai ir kaukaadas buutiskas priekshrociibas file_get_contents vai cURL......... droshvvien jau ka ir, bet man kaa noobam file_get_contents izskataas vienkaarshaak un iisaak :)

Edited by mrchinaski
Link to comment
Share on other sites

Nu cURL jau defaultā būs gandrīz jebkuram sevi cienošam hosterim maksas plānam.Parasti nav haļavajiem hostiem,ar ļoti retiem izņēmumiem.Bet par priekšrocībām-cURL ļauj pilnībā simulēt usera pārlūku(user agent,cookies,redirekti,post dati),un ir pamatā dažādām kontenta ievākšanas sistēmām un autologin skriptiem.Bet visbūtiskākā priekšrocība droši vien būs iespēja veikt visus pieprasījumus paralēli ar curl_multi_exec,piemēram ja ir vajadzība lejuplādēt vairākus liela apjoma failus,parsēt XML'us vai jebko citu,kur vien tas var noderēt.Kopā ar RegExp'iem tas ir spēks :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...