Twitter RSS

Intr-un articol anterior am oferit un exemplu de utilizare al librariei CURL. O utilizare a librariei CURL, foarte utila, este trimiterea de informatii folosind protocolul HTTP POST. Spre deosebire de exemplul mentionat, apar doua optiuni noi care trebuie setate pentru a trimite datele prin POST: CURLOPT_POST, care spune numarul de variabile transmise si CURLOPT_POSTFIELDS care contine un string cu variabilele si valorile acestora.

Sa vedem un exemplu, ca e mai usor de inteles. Pentru un test practic avem nevoie de doua fisiere, unul care trimite datele (curl.php) si unul care primeste si proceseaza datele (post.php). In cazul nostru cele doua fisiere arata asa:
1. post.php – aici afisam continutul variabilei superglobale $_POST. Practic vom vedea variabilele transmise si valorile acestora intr-o forma usor de citit.

< ?php
print_r($_POST);
?>

2. curl.php – aici trimitem datele prin POST si afisam continutul returnat de fisierul post.php dupa procesare.

< ?php
// Afisam datele in mod text, ca sa fie usor de citit
header('Content-type:text/plain');
 
// URL-ul fisierului care asteapta datele
$url = 'http://www.lamp.ro/post.php';
 
// Un array continand trei variabile ce urmeaza a fi trimise
$vars = array('a'=>'aaa',
              'b'=>'bbb',
              'c'=>'ccc');
 
// Concatenam variabilele, separate de semnul &
foreach( $vars as $key=>$value ) {
    $string .= $key.'='.$value.'&';
}
 
// Initializam sesiunea si trimitem datele
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($vars));
curl_setopt($ch,CURLOPT_POSTFIELDS,$string);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,2);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
 
$result = curl_exec($ch);
curl_close($ch);
 
// Afisam rezultatul fisierului post.php
echo $result;
 
?>

Acum putem accesa fisierul curl.php prin browser. Cele trei variabile setate vor fi trimise fisierului post.php care le va afisa iar apoi curl.php, la randul sau, va afisa continutul generat de post.php :)

Popularity: 3% [?]

Comentarii pentru “Expediere POST folosind CURL”

Ai intrebari?

* Te rog sa postezi pe NetHelp orice intrebare care nu are legatura cu articolul.

Retele sociale
Reclamã
Sharing makes you cool!
Categorii
Apache
Articole si tutoriale legate de serverul web Apache.
/articole-tutoriale-apache/

cPanel
Articole si tutoriale legate de utilizarea si administrarea sistemului de gestiune a serverelor de hosting, cPanel.
/articole-tutoriale-cpanel-whm/

DNS
Vezi toate articolele din categoria DNS
/dns-bind-domain-name-services/

Linux
Articole si tutoriale legate de Linux, sisteme BSD sau alte sisteme de operare din familia UNIX.
/articole-tutoriale-linux/

Mail
Vezi toate articolele din categoria Mail
/mail/

MySQL
Articole si tutoriale despre serverul de baze de date MySQL.
/articole-tutoriale-optimizare-mysql/

Perl
Vezi toate articolele din categoria Perl
/perl-practical-extraction-and-report-language/

PHP
Vezi toate articolele din categoria PHP
/php-language-hypertext-preprocessor/

Retele
Tutoriale despre retele de calculatoare, configurarea interfetelor de retea si rutarea IP-urilor.
/retele-networking/

Virtualizare
Articole si tutoriale despre virtualizare si sistemel virtuale create cu Xen sau OpenVZ.
/virtualizare-xen-openvz/

Web hosting
Articole despre serviciile de gazduire web, dedicate sau in regim shared.
/web-hosting/

Webmin / Virtualmin
Articole si tutoriale legate de sistemul de gestiune gratuit Webmin sau modulul Virtualmin.
/webmin-virtualmin/





Newsletter
LAMP Recomandã
NetHelp
SRV.ro
cpadmin.ro
ABCDomenii