(halbwegs) aktuelles Update (working):
Die request Funktion braucht ein Upgrade um Cookies zurückzugeben, falls sie es noch nicht kann ...Code:function vivo_upload($file, $filename) { global $cookies, $config; if(!file_exists($file)) throw new Exception('File not found'); $data['action'] = 'login'; $data['mail'] = $config['vivo.sx']['username']; $data['password'] = $config['vivo.sx']['password']; $response = request('https://vivo.sx/request', $data, true, null, null, true); $json = json_decode($response, true); if(!$json['status']) { return false; } $sid = str_replace('session=', '', $cookies[1]); $data = array(); $data['action'] = 'upload'; $data['session'] = $sid; $data['size'] = filesize($file); $response = request('https://vivo.sx/request', $data, false); $server = json_decode($response, true); if(json_last_error() != JSON_ERROR_NONE){ return false; } $data = array( 'Filename' => basename($file), 'session' => $sid, 'name' => basename($file), 'Upload' => 'Submit Query', 'action' => 'push', ); $response = request($server['PUSH'], $data, true, true, $file, $filename); return (filter_var($response, FILTER_VALIDATE_URL) ? $response : false ); }
Also
AlsoCode:curl_setopt($ch, CURLOPT_HEADERFUNCTION, "curlResponseHeaderCallback");
Code:function cookie($url) { return __DIR__.'/cookies/'.parse_url($url, PHP_URL_HOST).'.cookie'; } function curlResponseHeaderCallback($ch, $headerLine) { global $cookies; if (preg_match('/^Set-Cookie:\s*([^;]*)/mi', $headerLine, $cookie) == 1) $cookies[] = $cookie[1]; return strlen($headerLine); // Needed by curl }



THEMENSTARTER

Zitieren