[ Kondenzator @ 03.11.2013. 22:31 ] @
Pozdrav, Imam problema sa logiranjem na drupal site sa curl-om. Uradio sam to na najmanje 4-5 drugih stranica, ali na ovoj na kojoj trenutno radim stvari jednostavno ne funkcionisu. Mislim da imam problema sa cookies. Ne znam stvarno. Potrosio sam dva dana na ovo i malo mi fali da podignem bijelu zastavicu i predam se :). Code: Code: <?php ob_start(); // Initiate the output buffer function mymodule_get_csrf_header() { $curl_get = curl_init(); curl_setopt_array($curl_get, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_URL => 'http://will.sx/services/session/token', )); $csrf_token = curl_exec($curl_get); curl_close($curl_get); return 'X-CSRF-Token: ' . $csrf_token; } $username = 'test'; $password = 'TEST'; $request_url = 'http://will.sx/rests/user/login'; $user_data = array( 'username' => $username, 'password' => $password, ); $user_data = http_build_query($user_data); $curl = curl_init($request_url); curl_setopt($curl, CURLOPT_HTTPHEADER, array('Accept: application/json')); // Accept JSON response curl_setopt($curl, CURLOPT_POST, 1); // Do a regular HTTP POST curl_setopt($curl, CURLOPT_POSTFIELDS, $user_data); // Set POST data curl_setopt($curl, CURLOPT_HEADER, FALSE); // Ask to not return Header curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($curl, CURLOPT_FAILONERROR, TRUE); curl_setopt($curl, CURLOPT_COOKIESESSION, true); curl_setopt($curl, CURLOPT_COOKIEFILE, "cookie.txt"); curl_setopt($curl, CURLOPT_COOKIEJAR, "cookie.txt"); $response = curl_exec($curl); $http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($http_code == 200) { $logged_user = json_decode($response); echo 'logged'; } else { $http_message = curl_error($curl); die('Unable to connect to Basic CMS Engine! Username or password incorrect! Please enter valid username and password!'); } //setcookie(name,value,expire,path,domain,secure) setcookie($logged_user->session_name,$logged_user->sessid,time() + 10000,'/'); ob_end_flush(); // Flush the output from the buffer ?> Znaci kad u scripti hardkodiram username & password koji naravno nisu test, test dobijem poruku ''logged'' ali kad odem na pocetnu stranicu jednostavno nisam logovan. Kad printam $logged_user , $resposne il bilo koju drugu varijablu koja se pojavljuje u code-u dobijam uredan output. Svaka pomoc je dobro dosla. Poprilicno sam siguran da je do funkcije setcookies. Kad uradim $cookies = etcookie($logged_user->session_name,$logged_user->sessid,time() + 10000,'/'); print_r($cookies); dobijem kao output: 1 |