You can use this class for fast entry
<?php
class cURL {
var $headers;
var $user_agent;
var $compression;
var $cookie_file;
var $proxy;
function cURL($cookies=TRUE,$cookie='cookies.txt',$compression='gzip',$proxy='') {
$this->headers[] = 'Accept: image/gif, image/x-bitmap, image/jpeg, image/pjpeg';
$this->headers[] = 'Connection: Keep-Alive';
$this->headers[] = 'Content-type: application/x-www-form-urlencoded;charset=UTF-8';
$this->user_agent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0)';
$this->compression=$compression;
$this->proxy=$proxy;
$this->cookies=$cookies;
if ($this->cookies == TRUE) $this->cookie($cookie);
}
function cookie($cookie_file) {
if (file_exists($cookie_file)) {
$this->cookie_file=$cookie_file;
} else {
fopen($cookie_file,'w') or $this->error('The cookie file could not be opened. Make sure this directory has the correct permissions');
$this->cookie_file=$cookie_file;
fclose($this->cookie_file);
}
}
function get($url) {
$process = curl_init($url);
curl_setopt($process, CURLOPT_HTTPHEADER, $this->headers);
curl_setopt($process, CURLOPT_HEADER, 0);
curl_setopt($process, CURLOPT_USERAGENT, $this->user_agent);
if ($this->cookies == TRUE) curl_setopt($process, CURLOPT_COOKIEFILE, $this->cookie_file);
if ($this->cookies == TRUE) curl_setopt($process, CURLOPT_COOKIEJAR, $this->cookie_file);
curl_setopt($process,CURLOPT_ENCODING , $this->compression);
curl_setopt($process, CURLOPT_TIMEOUT, 30);
if ($this->proxy) curl_setopt($cUrl, CURLOPT_PROXY, ‘proxy_ip:proxy_port’);
curl_setopt($process, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($process, CURLOPT_FOLLOWLOCATION, 1);
$return = curl_exec($process);
curl_close($process);
return $return;
}
function post($url,$data) {
$process = curl_init($url);
curl_setopt($process, CURLOPT_HTTPHEADER, $this->headers);
curl_setopt($process, CURLOPT_HEADER, 1);
curl_setopt($process, CURLOPT_USERAGENT, $this->user_agent);
if ($this->cookies == TRUE) curl_setopt($process, CURLOPT_COOKIEFILE, $this->cookie_file);
if ($this->cookies == TRUE) curl_setopt($process, CURLOPT_COOKIEJAR, $this->cookie_file);
curl_setopt($process, CURLOPT_ENCODING , $this->compression);
curl_setopt($process, CURLOPT_TIMEOUT, 30);
if ($this->proxy) curl_setopt($process, CURLOPT_PROXY, $this->proxy);
curl_setopt($process, CURLOPT_POSTFIELDS, $data);
curl_setopt($process, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($process, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($process, CURLOPT_POST, 1);
$return = curl_exec($process);
curl_close($process);
return $return;
}
function error($error) {
echo "<center><div style='width:500px;border: 3px solid #FFEEFF; padding: 3px; background-color: #FFDDFF;font-family: verdana; font-size: 10px'><b>cURL Error</b><br>$error</div></center>";
die;
}
}
$cc = new cURL();
$cc->get('http://www.example.com');
$cc->post('http://www.example.com','foo=bar');
?>
[EDIT BY danbrown AT php DOT net: Includes a bugfix provided by "Anonymous" on 01-Dec-2008 @ 06:52. Also replaced real URL with example.com as per RFC 2606.]
Client URL Library
- Introduzione
- Installazione/Configurazione
- Costanti predefinite
- Esempi
- cURL Funzioni
- curl_close — Chiude una sessione CURL
- curl_copy_handle — Copy a cURL handle along with all of its preferences
- curl_errno — Restituisce il numero dell'ultimo errore
- curl_error — Restituisce una stringa contenente l'ultimo errore relativo alla sessione corrente
- curl_exec — Esegue una sessione CURL
- curl_getinfo — Ottiene informazioni relative a un determinato trasferimento
- curl_init — Inizializza una sessione CURL
- curl_multi_add_handle — Aggiunge un handle cURL ad un multi handle cURL
- curl_multi_close — Chiude un set di handle cURL
- curl_multi_exec — Esegue la sotto-connessione dell'handle cURL corrente
- curl_multi_getcontent — Restituisce il contenuto di un handle cURL se è impostato CURLOPT_RETURNTRANSFER
- curl_multi_info_read — Ottiene informazioni sui trasferimenti correnti
- curl_multi_init — Restituisce un nuovo multi handle cURL
- curl_multi_remove_handle — Rimuove un multi handle da un set di handle cURL
- curl_multi_select — Restituisce tutti i socket associati alla estensione cURL che possono essere "selected"
- curl_setopt_array — Set multiple options for a cURL transfer
- curl_setopt — Imposta una opzione per un trasferimento CURL
- curl_version — Restituisce la versione di CURL in uso
cURL
pyromus at gmail dot com
16-Oct-2008 11:37
16-Oct-2008 11:37
eflash at gmx dot net
05-Oct-2008 04:45
05-Oct-2008 04:45
In order to use curl with secure sites you will need a ca-bundle.crt file; here's a PHP script I've written which creates a fresh ca-bundle:
http://www.gknw.net/php/phpscripts/mk-ca-bundle.php
I've also written scripts in other languages, f.e. the Perl one which ships now with curl distributions:
http://curl.haxx.se/lxr/source/lib/mk-ca-bundle.pl
and also a Win32 WSH script if you prefer that:
http://www.gknw.net/vb/scripts/mk-ca-bundle.vbs
HTH, Guenter.
cristianods at yahoo dot com
14-Aug-2008 01:53
14-Aug-2008 01:53
Tip for Installing cURL with AppServ development server on Windows
If you are running AppServ as a WAMP development environment on a Windows machine, you may experience difficulty installing cURL. Here are some helpful steps:
First go to the PHP directory and copy the following libraries to the windows/system32 dir.
ssleay32.dll
libeay32.dll
Open the php ini file and remove the ; from extension=php_curl.dll
Reboot your machine to load […]
