Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Początki zabaw z curlem :)
kaszanka
post
Post #1





Grupa: Zarejestrowani
Postów: 138
Pomógł: 1
Dołączył: 17.02.2007

Ostrzeżenie: (0%)
-----


Hi,

Stawiam pierwsze kroki z curlem i już mam dylamaty, otóż, prosty skrypt który mi działa:

  1. <?php
  2. $post_fields = 'query[as]=a1&query[aa]=aaa1';
  3.           $ch = curl_init();
  4.           curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); //follow any redirects
  5.           curl_setopt($ch, CURLOPT_VERBOSE, 1);
  6.           curl_setopt($ch, CURLOPT_URL, "http://localhost/command.php");
  7.           curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //print response page
  8.           curl_setopt($ch, CURLOPT_POST, 1);
  9.           curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);
  10.          $res = curl_exec($ch);
  11.          curl_close($ch);
  12. echo "<pre>"; print_r($res); echo "</pre>";
  13. ?>

Jednak, że docelowo curl ma być wykorzystywany na wielu podstronach jednego serwisu chce opcję połączenia curla wstawić w funkcję i ją do pliku function.php a na pod stronach tylko się do niej odwoływać:


  1. <?php
  2. function curl_send( $COMMAND,$URL="http://localhost/command.php" )
  3. {
  4.    $ch = curl_init();
  5.    curl_setopt($ch,CURLOPT_URL,$URL);
  6.    curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);
  7.    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
  8.    curl_setopt($ch,CURLOPT_POST,1);
  9.    curl_setopt($ch,CURLOPT_USERAGENT,"client API");
  10.    curl_setopt($ch,CURLOPT_POSTFIELDS,$COMMAND);
  11.    curl_setopt($ch,CURLOPT_HEADER,0);
  12.    $response=curl_exec($ch);
  13. //    echo "$response<BR>";
  14.    curl_close($ch);
  15. }
  16. // poniższy kod będzie znajdował się na wielu podstronach lecz z inną zawartości "$post":
  17. $post = 'query[as]=a1&query[aa]=aaa1';
  18. $response = unserialize(curl_send($post));
  19. echo "<pre>"; print_r($response); echo "<pre>";
  20. ?>

Plik command.php:
  1. <?php
  2. if($_POST['query']['as'] == "a1") { echo "Wykonano połączenie"; } else { }
  3. ?>


Co robię źle, iż curl w funkcji działa lecz tylko gdy odhaszuje "// echo "$response<BR>";" jednak wtedy zwraca wszystko (wynik wszystkich wysłanych parametrów $post, a nie wyświetla to co chce czyli za pomocą "echo "<pre>"; print_r($response); echo "<pre>";" danej zawartości $post?

Ten post edytował kaszanka 13.03.2009, 20:31:57
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kaszanka
post
Post #2





Grupa: Zarejestrowani
Postów: 138
Pomógł: 1
Dołączył: 17.02.2007

Ostrzeżenie: (0%)
-----


Doszedłem co jest nie tak z tym (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
serialize i unserialize rozwiązało problem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 16.10.2025 - 13:59