Genesis730 Posted January 29, 2010 Share Posted January 29, 2010 So here is my code... I got it off of here... Because I'm completely new to cURL, just wanna get a page that requires a login... I wrote everything word for word and got my own values for the two functions and get this error... "Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in /home/a5623324/public_html/cURL/curlML.php on line 24" here's all my code except for the login scripts (obvious reasons) <? //LOGIN INFORMATION WAS DELETED FROM HERE function curl_login($url,$data,$proxy,$proxystatus){ $fp = fopen("cookie.txt", "w"); fclose($fp); $login = curl_init(); curl_setopt($login, CURLOPT_COOKIEJAR, "cookie.txt"); curl_setopt($login, CURLOPT_COOKIEFILE, "cookie.txt"); curl_setopt($login, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"); curl_setopt($login, CURLOPT_TIMEOUT, 40); curl_setopt($login, CURLOPT_RETURNTRANSFER, TRUE); if ($proxystatus == 'on') { curl_setopt($login, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($login, CURLOPT_HTTPPROXYTUNNEL, TRUE); curl_setopt($login, CURLOPT_PROXY, $proxy); } curl_setopt($login, CURLOPT_URL, $url); curl_setopt($login, CURLOPT_HEADER, TRUE); curl_setopt($login, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); curl_setopt($login, CURLOPT_FOLLOWLOCATION, TRUE); curl_setopt($login, CURLOPT_POST, TRUE); curl_setopt($login, CURLOPT_POSTFIELDS, $data); ob_start(); // prevent any output return curl_exec ($login); // execute the curl command ob_end_clean(); // stop preventing output curl_close ($login); unset($login); } function curl_grab_page($site,$proxy,$proxystatus){ $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); if ($proxystatus == 'on') { curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE); curl_setopt($ch, CURLOPT_PROXY, $proxy); } curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt"); curl_setopt($ch, CURLOPT_URL, $site); ob_start(); // prevent any output return curl_exec ($ch); // execute the curl command ob_end_clean(); // stop preventing output curl_close ($ch); } ?> LINE 24: " curl_setopt($login, CURLOPT_FOLLOWLOCATION, TRUE); " Quote Link to comment Share on other sites More sharing options...
Genesis730 Posted January 29, 2010 Author Share Posted January 29, 2010 Anybody??? Quote Link to comment Share on other sites More sharing options...
teamatomic Posted January 29, 2010 Share Posted January 29, 2010 Comment out the FOLLOWLOCATION line and see what happens. To lessen the chance of an error make sure you dont leave any open url's domain.com vs. domain.com/ as FOLLOWLOCATION is needed if you omit the trailing slash. It is probably not a safe_mode problem. If the script is not able to get anywhere after logging in then it is probably due to a redirect that without FOLLOWLOCATION cant be followed. The only place to set it is httpd.conf or php.ini. If you can use your own php.ini you can set it there otherwise contact your hosting provider and ask them to put your root into the open_basedir_path if you dont have a control panel that allows you to set apache directives. HTH Teamatomic Quote Link to comment Share on other sites More sharing options...
Genesis730 Posted January 29, 2010 Author Share Posted January 29, 2010 I have checked my PHP info and found that safe mode is infact off, however the basedir is set to /home/:/usr/lib/php:/tmp <---- that's my problem So is there any way within the code to change that or is there any workaround? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.