Ok here it is how I get my e107 v0.7.2 worked on x10hosting. The probelm lies on the buffering in e107 which let x10's server to fail to parsed the code.
Step 1:
- Get a copy of e107 0.7.2
Step 2:
- Go to e107_install/installer_handling_class.php
- Find Line 37
- Replace with
Code:
// while (@ob_end_clean()); //this is the thing that makes it fail on x10
- Save your file
Step 3:
- Go to class2.php
- Find Line 22
Code:
while (@ob_end_clean()); // destroy all ouput buffering
ob_start(); // start our own.
- Replace with
Code:
//while (@ob_end_clean()); // destroy all ouput buffering, it will fail us at here
//ob_start(); // start our own, stop buffering since we did not destroy it, or it will give special characters in header
- Save your file
Step 4:
- Go to comment.php
- Find Line 288
Code:
ob_end_flush(); // dump the buffer we started
- Replace with
Code:
// ob_end_flush(); // dump the buffer we started, again it will fail you
- Save your file
Step 5:
- Goto install.php
- Find Line 6 to 20
Code:
// setup some php options
ini_set('magic_quotes_runtime', 0);
ini_set('magic_quotes_sybase', 0);
ini_set('arg_separator.output', '&');
ini_set('session.use_only_cookies', 1);
ini_set('session.use_trans_sid', 0);
// Ensure thet '.' is the first part of the include path
$inc_path = explode(PATH_SEPARATOR, ini_get('include_path'));
if($inc_path[0] != ".") {
array_unshift($inc_path, ".");
$inc_path = implode(PATH_SEPARATOR, $inc_path);
ini_set("include_path", $inc_path);
}
unset($inc_path);
- DELETE THIS CODE
- Find Line 4
- Replace with
Code:
error_reporting(E_ERROR | E_PARSE);
- Find Line 24, 25
Code:
include_once("./{$installer_folder_name}/defaults.php");
include_once("./{$HANDLERS_DIRECTORY}e107_class.php");
- Replace with
Code:
require_once("./{$installer_folder_name}/defaults.php");
require_once("./{$HANDLERS_DIRECTORY}e107_class.php");
- Find Line 33, 34
Code:
include_once("./{$installer_folder_name}/install_template_class.php");
include_once("./{$installer_folder_name}/installer_handling_class.php");
- Replace with
Code:
require_once("./{$installer_folder_name}/install_template_class.php");
require_once("./{$installer_folder_name}/installer_handling_class.php");
- Find Line 36
Code:
include_once("./{$installer_folder_name}/forms_class.php");
- Replace with
Code:
require_once("./{$installer_folder_name}/forms_class.php");
- Find Line 43
Code:
if(!isset($_POST['stage'])) {
- Replace with
- Save
Step 8:
- Go to e107_admin/mailout.php
- Find around line 134
- Replace with
- Save
Step 7:
- Start installing and have fun working your e107 v0.7x on x10hosting
On a side note, if you are using coppermine gallery 1.35c by McFly, you need to edit 1 file too or you will get blank page because of the buffer thinggie.
Step 8 (For coppermine gallery 1.35c to work):
- Open your coppermine_menu/bridge/e107.inc.php
- Find Line 25, 26, 27
Code:
while (ob_get_level() > 1) {
ob_end_flush(); // Kill extra cpg buffering
}
- Replace with
Code:
//while (ob_get_level() > 1) {
// ob_end_flush(); // Kill extra cpg buffering
//}
ob_start(); //we killed the buffer start in class2.php, therefore we start buffer here
This will make it work. I found the solution for coppermine myself, the rest on comment.php, class2.php, install.php and installer_handling_class.php were solved by steved from
www.e107.org . I took some time to let it work, but it's worth the effort.
- Edited to include proper install.php and mailout.php fix. Left it out in sleepy mode =X