[PHP][post/get] Hoe communiceren met andere server?

Pagina: 1
Acties:
  • 196 views

  • TygeR
  • Registratie: Oktober 2000
  • Laatst online: 06-02 16:23
Hallo,

Door een rede die buiten mijn invloed om gaat heb ik te maken met een setup waarbij er communicatie moet plaatsvinden tussen 2 servers en de client. Hierbij wil ik gezien onze doelgroep het gebruik van javascript mijden. 1 van de 2 servers heeft beschikking over alle gegevens (waaronder login gegevens) op de andere server staan alle pagina's waar de site gebruiker mee te maken heeft. Bijde servers ondersteunen PHP, nu is er een API opgesteld voor communicatie tussen de servers waarbij gebruik gemaakt wordt van Post en Get methode's. Nu is mijn vraag: kan ik vanuit PHP een url met post en get vars openen op de andere server en de data http data opslaan in een variabele?

  • djexplo
  • Registratie: Oktober 2000
  • Laatst online: 07-07 15:40
PHP:
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
//set POST variables
$url = 'http://domain.com/get-post.php';
$fields = array(
 'lname'=>urlencode($last_name),
 'fname'=>urlencode($first_name),
 'title'=>urlencode($title),
 'company'=>urlencode($institution),
 'age'=>urlencode($age),
 'email'=>urlencode($email),
 'phone'=>urlencode($phone)
 );

//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string,'&');

//open connection
$ch = curl_init();

//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);

//execute post
$result = curl_exec($ch);

//close connection
curl_close($ch);

[ Voor 3% gewijzigd door djexplo op 23-09-2009 11:32 ]

'if it looks like a duck, walks like a duck and quacks like a duck it's probably a duck'


  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Ja, dat kan.

@hierboven: gebruik http_build_query, of geef gewoon de hele data-array als argument mee. Dan kun je ook (geneste) arrays versturen ;)

[ Voor 57% gewijzigd door CodeCaster op 23-09-2009 11:40 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


  • TygeR
  • Registratie: Oktober 2000
  • Laatst online: 06-02 16:23
Super, bedankt voor de snelle en uitgebreide respons! Ik ga het gelijk verwerken en testen.

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Zoals je kan zien had je met wat zoekwerk perfect een antwoord op je vraag kunnen vinden.

We verwachten hier op GoT dat een TS het een en ander aan voorwerk verricht voordat hij een topic opent. Het kan natuurlijk zijn dat je niet kunt vinden wat je zoekt, maar vermeld dan minstens in je topic waar je op gezocht hebt.

Lees ook even De Quickstart door.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Dit topic is gesloten.