# E blah install problem



## jayhusky (Jul 24, 2008)

I have recently attempted to install eblah onto my site as various different forum software have proved ineffcient and lousy. A copy of the error is available below.

Please note the site domain has been removed for technical reasons

*
WARNING!
Your forum may not work properly if you continue. Setup recommends editing the path to directories in Settings.pl and then refreshing this page until this message disappears. There was a problem verifying that the following directories exist:

Prefs Currently set to: ./Prefs
Messages Currently set to: ./Messages
Members Currently set to: ./Members
Boards Currently set to: ./Boards
Languages Currently set to: ./Languages
Avatars Currently set to: /blahdocs/Avatars
uploads Currently set to: /blahdocs/uploads
template Currently set to: /blahdocs/template 
The following may help you figure out what your paths are: 
Document Root: 
Script name: e:\domains\s\SITEDOMAIN.co.uk\user\htdocs\cgi-bin\blah\Setup.pl 
Please note that not all server report the above information correctly.

For the quickest support on the E-Blah Support Forum, PLEASE copy and past everything in this red box. 
*

Any help is appreciated!


----------



## hiphopopotimus (Jul 24, 2008)

Have you tried adding ' e:\domains\s\SITEDOMAIN.co.uk\user\htdocs\cgi-bin\blah\' as the 'path to directories' in 'Settings.pl'?


----------



## jayhusky (Jul 24, 2008)

Yes I have and i get a odd message come back  at me when i try that

here is the message...

Prefs Currently set to: ./Prefs
Messages Currently set to: ./Messages
Members Currently set to: ./Members
Boards Currently set to: ./Boards
Languages Currently set to: ./Languages
Avatars Currently set to: sabaandsticky.co.ukhtdocslahdocs/Avatars
uploads Currently set to: sabaandsticky.co.ukhtdocslahdocs/uploads
template Currently set to: sabaandsticky.co.ukhtdocslahdocs/template


----------



## Eevee (Jul 24, 2008)

Don't use backslashes in path names.

edit: oh my god what the fuck windows server


----------



## jayhusky (Jul 24, 2008)

Eevee, ur saying in the long term do change the back slashes to forward slashes, yes?

And I know its a Windows server but it does help for installing a few items.


----------



## Eevee (Jul 24, 2008)

Backslashes are used for escaping in most languages, which is why your '\b' is being replaced with a garbage character; that's a *b*ell.  Either double them (e:\\domains\\...) or just use forward slashes.

Not that this has any bearing on the paths starting with a dot.


----------



## jayhusky (Jul 24, 2008)

ok thanks for that...

do you have any thoughts on the dot?

This is the code from settings.pl


```
####################################################
# E-Blah Bulliten Board Systems               2008 #
####################################################

# IN MOST CASES THIS FILE SHOULDN'T BE EDITED.
# ONLY EDIT IT IF >SETUP< TELLS YOU TO!

# What is the directory that Settings.pl is located in?
$root = ".";

# This should be the only line you need to edit for Avatars, uploads, and templates directories
$bdocsdir2 = "$ENV{'DOCUMENT_ROOT'}/blahdocs";

####################################################
# DO NOT MODIFY ANYTHING BELOW THIS LINE!          #
####################################################

$bversion = 1; # PRE-SETUP Version

# Full DIR to ./{NAME} (Directories; no trailing slash: /)
# If $root is correct, these shouldn't need editing
$code      = "$root/Code";       # Code
$boards    = "$root/Boards";     # Boards
$prefs     = "$root/Prefs";      # Prefs
$members   = "$root/Members";    # Members
$messages  = "$root/Messages";   # Messages
$languages = "$root/Languages";  # Languages
$modsdir   = "$root/Mods";       # Mods Directory

# URL to /blahdocs/{NAME} (URL-Directories; no trailing slash: /)
$images     = "/blahdocs/images";    # images
$buttons    = "/blahdocs/buttons";   # buttons
$simages    = "/blahdocs/Smilies";   # Smilies
$avsurl     = "/blahdocs/Avatars";   # Avatars
$uploadurl  = "/blahdocs/uploads";   # uploads
$templatesu = "/blahdocs/template";  # template
$bdocsdir   = "/blahdocs";           # blahdocs Directory

# Full DIR to the {NAME} directory (Directory; no trailing slash: /)
$avdir     = "$bdocsdir2/Avatars";   # Avatars
$uploaddir = "$bdocsdir2/uploads";   # uploads
$templates = "$bdocsdir2/template";  # template

# HOLY, HOLY, HOLY IS THE LORD GOD ALMIGHTY!
1;
```


----------



## hiphopopotimus (Jul 24, 2008)

furcity said:


> do you have any thoughts on the dot?



Change it to:
e:\\domains\\s\\SITEDOMAIN.co.uk\\user\\htdocs\\cgi-bin\\blah\\
??

Though I don't know why you should have to specify an absolute directory, relative paths should work.


----------



## net-cat (Jul 24, 2008)

Yes. It's because of the way Perl (and most common programming languages) interprets the backslash character in the string.

Basically, it's an escape character that signals the interpreter/compiler "the next character has a special meaning, treat it differently." "\\" is basically "never mind this is supposed to be a regular backslash."


----------



## jayhusky (Jul 24, 2008)

have managed to get rid of the board errors

it now looks like this



> Prefs Currently set to: Prefs
> Messages Currently set to: Messages
> Members Currently set to: Members
> Boards Currently set to: Boards
> Languages Currently set to: Languages


----------



## hiphopopotimus (Jul 24, 2008)

furcity said:


> have managed to get rid of the board errors



Once again, furry tech support is triumphant.


----------



## jayhusky (Jul 24, 2008)

Update I fixed it all.. I tried out a few different methods using copies of the sttings.pl file and it works now....

I must admit however i have absolutely NO knowledge of Perl and was just messing with the code.

here is the message now



> Directory Success!
> Setup has verified that all the directories appear to exist on the server (they may not be writeable though). Setup will attempt to chmod these directories before continuing (to make them writeable). However, it is recommended that you chmod the directories and files as shown in the install documentation before continuing. Again, setup will attempt to chmod these directories for you; however, there is no guarantee that it will work.



BIG thanks to everyone who helped me out....

NO thanks to Eblah staff who I still haven't heard from since Saturday


----------



## jayhusky (Jul 24, 2008)

Alas my joy was short lived

I just got this message



> Theme not found!
> 
> Software Error
> Sorry, but an error occurred. If you are unsure about how to solve this error you can contact the system administrator.
> ...



I have fixed most of the errors before it but I cannot seem to be able to find the ./ in front of the path.

This path : *./*e:\domains\s\SITEDOMAIN.co.uk\user\htdocs\cgi-bin\blah\Code\BoardIndex.pl

Bold= Emphasis  on the bit I want to remove


I have included the code for the page


```
#!/usr/bin/perl

############################################################
# E-Blah Bulletin Board Systems               5 March 2008 #
############################################################
# Software Version: 10.3.5                                 #
# Project started : December 2001 by Justin                #
# Distributed by  : http://www.eblah.com                   #
# License         : http://www.eblah.com/license.php       #
############################################################
# This program is free software; you can redistribute it   #
# and/or modify it under the terms of the GNU General      #
# Public License as published by the Free Software         #
# Foundation; version 2 of the License.                    #
# This program is distributed in the hope that it will be  #
# useful, but WITHOUT ANY WARRANTY; without even the       #
# implied warranty of MERCHANTABILITY or FITNESS FOR A     #
# PARTICULAR PURPOSE.  See the GNU General Public License  #
# for more details.                                        #
############################################################
# Copyright (c) 2001 - 2008 E-Blah.                        #
############################################################

use CGI::Carp fatalsToBrowser;

# Global information:
$theblahver  = 17;
$version     = $versioncr = '10.3.5'; # Said Version; Copyright version

# Filename information
$scriptname = $scriptname || 'e:\\domains\\s\\SITEDOMAIN.co.uk\\user\\htdocs\\cgi-bin\\blah\\Blah.pl'; # Change name of Blah.pl
$modrewrite = $modrewrite || '?';       # Setting, mod_rewrite: on = '' | off = '?'

use Fcntl ':flock';

# Default language
$languagep = "English";
$languages = "Languages";

require('Settings.pl');

require("e:\\domains\\s\\SITEDOMAIN.co.uk\\user\\htdocs\\cgi-bin\\blah\\Code\\QuickCore.pl");
UFS();
CheckCookies();
GetThemes();

$language = "$languages/$languagep";
require("$language.lng");
require("e:\\domains\\s\\SITEDOMAIN.co.uk\\user\\htdocs\\cgi-bin\\blah\\Code\\Routines.pl");
require("e:\\domains\\s\\SITEDOMAIN.co.uk\\user\\htdocs\\cgi-bin\\blah\\Code\\Load.pl");

# Remove the theme variable for guests/search engines
redirect() if($URL{'theme'} && $username eq 'Guest');

# Load basic features we can use later
CreateGroups();
BoardCheck();
ClickLog();
AL();

GetMemberID($username) if($username ne 'Guest');

# Lets see if this user should have access ...
if(($maintance || $noguest) || $lockout || -e("$root/Maintance.lock")) { CoreLoad('BoardLock'); MainLO(); }
Ban();

sub UFS {
	my($query);
	@url = split(/\//,$ENV{'QUERY_STRING'});
	foreach (@url) {
		($action,$actiondo) = split(/-/,$_);
		$URL{$action} = $actiondo;

		if($action =~ /\&/) { $blockform = 1; } # Hack attemp, block forms!!
	}

	if(!$blockform) {
		if($ENV{'CONTENT_TYPE'} =~ /multipart\/form-data/) { # If it's an upload (uses CGI library) ...
			require CGI || error("CGI Load error"); import CGI qw(:standard);
			$form = new CGI;
			foreach $var ($form->param) {
				$output = join(',',$form->param($var));
				if(!$nouselist{$var}) { $FORM{$var} = $output; }
			}
		} else { # If it's not ...
			read(STDIN, my $temp, $ENV{'CONTENT_LENGTH'});
			@pairs = split(/&/,$temp);

			foreach (@pairs) {
				($key,$content) = split(/=/,$_);
				$content =~ tr/+/ /;
				$content =~ s/%(..)/pack("c",hex($1))/ge;
				$key =~ tr/+/ /;
				$key =~ s/%(..)/pack("c",hex($1))/ge;
				chomp($content);
				$FORM{$key} = $content;
			}
		}
	}
}

sub CoreLoad {
	my($temp1,$temp2) = @_;
	if($CoreLoaded{$temp1,$temp2}) { return(); }
	$CoreLoaded{$temp1,$temp2} = 1;
	if($temp2 == 1) { $load = "$language/$temp1.lng"; }
	elsif($temp2) { $load = $temp1; }
		else { $load = "$code/$temp1.pl"; }
	eval { require($load) };

	if($_[1] == 2) {
		if($@) { return(0); }
		return(1);
	}
	if($@) { error(qq~$rtxt[52]\n\n$load\n\n\[size=9\]$@\[/size\]~,2); }
}

{
	%LoadBoard = (
		'memberpanel' => 'MemberPanel,MemberPanel',
		'login'       => 'Login,Login',
		'mod'         => 'Moderate,Moderate',
		'register'    => 'Register,Register',
		'admin'       => 'AdminList,AdminList',
		'post'        => 'Post,Post',
		'ppoll'       => 'Poll,PPoll',
		'display'     => 'MessageDisplay,MessageDisplay',
		'mindex'      => 'MessageIndex,MessageIndex',
		'print'       => 'Print,PrintDisplay',
		'members'     => 'Members,Members',
		'report'      => 'Report,Report',
		'cal'         => 'Calendar,CalendarLoad',
		'download'    => 'Attach,Download',
		'stats'       => 'Stats,Stats',
		'search'      => 'Search,Search',
		'invite'      => 'Invite,Invite',
		'recommend'   => 'Recommend,Recommend',
		'mark'        => ',Mark',
		'shownews'    => 'Portal,Shownews',
		'portal'      => 'Portal,Portal',
		'tags'        => 'Tags,Tags'
	);

	if($LoadBoard{$URL{'v'}}) {
		($core,$sub) = split(',',$LoadBoard{$URL{'v'}});
		CoreLoad($core) if($core ne '');
		&$sub();
	} elsif($URL{'m'}) { CoreLoad('MessageDisplay'); MessageDisplay(); }
	elsif($URL{'b'}) { CoreLoad('MessageIndex'); MessageIndex(); }
		else {
			error($gtxt{'notfound'},0,1) if($URL{'v'} ne '');
	
		CoreLoad ('e:\\domains\\s\\SITEDOMAIN.co.uk\\user\\htdocs\\cgi-bin\\blah\\Code\\BoardIndex'); LoadIndex();
		}
	exit;
}
1;
```

Sorry about the long post.


----------



## Eevee (Jul 24, 2008)

Why did you add e:\domains\s\SITEDOMAIN.co.uk\user\htdocs\cgi-bin\blah\Code\ all over the place?  The code already sticks $root on everything.

Don't just change things until it appears to work jesus christ  D:

Also, $code appears to be simply '.' in this file, whereas the settings file you pasted should set it to './Code'?


----------



## jayhusky (Jul 24, 2008)

I originally left the code as is and it threw up all kinds of errors so i tweaked it and it worked for a little while.

care to elaborate about where the $code is?


----------



## Eevee (Jul 24, 2008)

What did you do to the code?

You should not _have_ to do anything.  If you did, and you don't know what you did, then no wonder it's breaking.

$code is in settings.pl.


----------



## jayhusky (Jul 25, 2008)

Just a note this situation is being dealt with by E-Blah staff. I convinced them to take a look and the problem is currently being rectified.

Turns out a path error caused it all and amazingly it was a peice of code that I * DIDN'T* modify.

Thanks for all the help everyone.


----------



## irrarphofk (Mar 6, 2011)

*hi,I am forums.furaffinity.net member now,Grate !*

Hello.                   The interesting name of a site - forums.furaffinity.net, interesting  this here is very good.                         I spent 3 hours searching in the network, until find your forum!


----------



## Aden (Mar 6, 2011)

*Re: hi,I am forums.furaffinity.net member now,Grate !*



irrarphofk said:


> Hello.                   The interesting name of a site - forums.furaffinity.net, interesting  this here is very good.                         I spent 3 hours searching in the network, until find your forum!


 
what the fuck is this


----------

