Sprawdzasz w źródle strony jakiego typu jest formularz jesli GET to zawartość jest wysyłana w formie adresu "index.php?login=zenek&haslo=bolek" coś takiego. czyli po prostu generujesz link do curla.
Przy POST jest troche inaczej jednak tutaj mam gotować funkcje której sam używam (loguje się na wykop bez problemu , tylko to już nie samym post

)
$headers = array('Accept: text/html,application/xhtml+xml,application/xml;q=0.9;q=0.8', 'Accept-Language: pl,en-us;q=0.7,en;q=0.3',
'Accept-Language: pl,en-us;q=0.7,en;q=0.3',
'Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7',
'Keep-Alive: 300',
'Connection: keep-alive');
$cookie_file = 'cookie.txt';
function mpost($url, $post)
{
global $cookie_file, $headers; $wynik = 0;
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Opera/9.80 (Windows NT 6.1; U; en) Presto/2.7.62 Version/11.01');
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// poniższa linijka nie zawsze jest potrzebna , możesz spróbować jak nie będzie działać dopiero 
//curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_getinfo($ch);
$wynik = curl_exec($ch);
curl_close($ch);
return $wynik;
}
//Przyklad uzycia
'user[username]'=> $login,
'user[password]'=> $password);
mpost('www.jakaas-strona.pl/login.php',$daneformularza);