⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 install.cgi

📁 一个linux论坛
💻 CGI
📖 第 1 页 / 共 4 页
字号:
            $usravatarswritable = "属性为<b>可写</b>!" if (!$usravatarswritable);
            unlink "$makefile";
        } else { $errorflag = "1"; $usravatarsdir = "<b>没有找到</b>!"; }

        $dirtocheck = "$imagesdir" . "usr";
        if (-d "$dirtocheck") { 
        	$usrdir = "找到!"; 
            $makefile = "$dirtocheck" . "/test.txt";
            open (TEST, ">$makefile") or $usrwritabler = "目录 $dirtocheck 为不可写,请改变属性为 777 。";
            print TEST "-";
            close (TEST);
            $usrwritabler = "属性为<b>可写</b>!" if (!$usrwritabler);
            unlink "$makefile";
        	} else { $errorflag = "1"; $usrdir = "<b>没有找到</b>!"; }

        $dirtocheck = "$imagesdir" . "btg";
        if (-d "$dirtocheck") { $btg = "找到!"; } else { $errorflag = "1"; $btg = "<b>没有找到</b>!"; }

        $dirtocheck = "$imagesdir" . "emot";
        if (-d "$dirtocheck") { $emot = "找到!"; } else { $errorflag = "1"; $emot = "<b>没有找到</b>!"; }

        @progs_to_search = ('admincenter.cgi', 'allnews.cgi', 'announcements.cgi', 'code.cgi', 'forumoptions.cgi', 'forums.cgi', 'help.cgi', 'install.cgi', 'index.html', 'lb.lib.pl', 'lbadmin.lib.pl', 'lbfriend.cgi', 'lbmail.lib.pl', 'leoboard.cgi', 'loginout.cgi', 'mailmembers.cgi', 'massmsg.cgi', 'memberlist.cgi', 'messanger.cgi', 'misc.cgi', 'news.cgi', 'noreg.cgi', 'pag.cgi', 'poll.cgi', 'post.cgi', 'postings.cgi', 'postjs.cgi', 'printpage.cgi', 'profile.cgi', 'register.cgi', 'remmail.cgi', 'search.cgi', 'setforums.cgi', 'setipbans.cgi', 'setmemberbak.cgi', 'setmembers.cgi', 'setmembertitles.cgi', 'setskin.cgi', 'setstyles.cgi', 'settemplate.cgi', 'setvariables.cgi', 'shareforums.cgi', 'team.cgi', 'topic.cgi', 'visitforum.lib.pl', 'whosonline.cgi', 'data/styles.cgi');

        
		print qq(
		    <font size="5" face="宋体" color="#000000">
		    <h1>LB5000 MX 安装向导</b></font></h1><font face="宋体" color="#000000">
		    程序编制:<a href="mailto:webmaster\@cgier.com">山鹰糊</a>  参与制作:<a href="mailto:info\@cgier.net">花无缺</a><BR>
		    版权所有:<a href="http://www.cgier.com/">CGI 编程者之家</a></font>
		    <hr noshade color="#000000">
		    <br>
		    <font face="宋体" color="#000000">
		    <b>欢迎使用 LB5000 MX 安装向导!</b>
		    <br><br>
		    <b>第二步:</b> 谢谢您写入信息,下面是尝试安装的结果。<br>如果您得到了错误信息提示,请确定您已经完整上传了本程序,以及目录属性、位置设定正确。</font><br>

		    <hr noshade color="#000000">
		    <font face="宋体" color="#0000FF">
		    <br><b>您键入的安装信息是否正确保存?</b></font>
		    <br>
		    $saved_variables
		    <br><br>
		    <hr noshade color="#000000">
		    <font face="宋体" color="#0000FF">
		    <br><b>路径预览</b></font>
		    <br>
		    <font face="宋体" color="#000000">
		    所有程序(*.cgi)的路径: $lbdir - $found_cgi
		    <br><br>
		    -- 查找 ${lbdir}data    - $datadir - $datawritable<br>
		    -- 查找 ${lbdir}help    - $helpdir - $helpwritable<br>
		    -- 查找 ${lbdir}$msgdir  - $messagesdir - $messageswritable<br>
		    -- 查找 ${lbdir}$memdir  - $membersdir - $memberswritable<br>
		    <br>
		    <br>
		    <font face="宋体" color="#000000">
		    所有非 CGI 文件(images)的路径: $imagesdir - $found_image
		    <br><br>
		    -- 查找 ${imagesdir}images   - $images_dir<br>
		    -- 查找 ${imagesdir}emoticons  - $emoticonsdir<br>
		    -- 查找 ${imagesdir}avatars   - $avatarsdir<br><br>
		    -- 查找 ${imagesdir}usravatars - $usravatarsdir - $usravatarswritable<br><br>
		    -- 查找 ${imagesdir}usr       - $usrdir - $usrwritabler<br><br>
		    -- 查找 ${imagesdir}btg     - $btg<br><br>
		    -- 查找 ${imagesdir}emot     - $emot<br><br>

		    <hr noshade color="#000000">
		    <font face="宋体" color="#0000FF">
		    <br><b>URL 预览</b></font>
		    <br>
		    <font face="宋体" color="#000000">
		    您输入的图片 URL: $imagesurl
		    <br>
		    <br>
		    -- 查找 $imagesurl/images/announce.gif - <img src="$imagesurl/images/announce.gif" border=0><br>
		    -- 查找 $imagesurl/emoticons/smile.gif - <img src="$imagesurl/emoticons/smile.gif" border=0><br>
		    -- 查找 $imagesurl/avatars/noavatar.gif - <img src="$imagesurl/avatars/noavatar.gif" border=0><br><br>
		    如果您看到的是错误的图片,请检查这个 $imagesurl 路径是否正确,同时也请确定图片文件是否是以 Binary 方式上传的。<BR><BR>
		    );
		    if ($errorflag eq "1") { print qq(<br><br><font color="#FF0000">LB5000 MX 安装向导发现错误,不能够继续。请返回重新填入正确的信息); print "</body></html>"; exit; }

		    
		    print qq(
		    <hr noshade color="#000000">
		    <font face="宋体" color="#0000FF">
		    <b>文件合法性检查</b></font>
		    <br>
		    <br>
		    <font face="宋体" color="#000000">
		    LB5000 MX 安装向导将检查您的所有 CGI 文件是否已上传,并且是以 ASCII 方式上传的
		    <br><br>);

		    foreach (@progs_to_search) {

		        $filetotest = "$lbdir" . "$_";
		        if (-e $filetotest) {
		            open (TEST, "$filetotest");
		            @testfile = <TEST>;
			        close (TEST);
			        if (grep(/\r/, @testfile) && $^O ne "MSWin32") {
				        print "<b>找到 $_ ,但它好像是以 BINARY 方式上传的。请重新以 ASCII 方式上传!</b><br>";
		                }
		                else { print "找到 $_ - 上传正确!<br>"; }
		            }
		            else { print "<b>找不到 $_ ! - 是否上传了?</b><br>"; }

		            } # end foreach

		    print qq(
		        <br>
		        <hr noshade color="#000000">
		        <font face="宋体" color="#0000FF">
		        <br><b>报告结束</b></font>
		        <br>
		        <br>
		        <font face="宋体" color="#000000">
		        LB5000 MX 安装向导已经完成报告。如果您发现错误,请返回重新填写信息。
		        <br>同时,您也可以使用管理员身份在任何时间重新填写信息。
		        <br><br>
		        如果您不确定一些问题,或者出现一些未知的错误,请到 <a href="http://www.cgier.com/"><b>CGI 编程者之家</b></a> 的论坛中提出!
		        <br><br><i>报告结束</i>
		        <br><br>
		        <hr noshade color="#000000">
		        <font face="宋体" color="#0000FF">
		        <br><b>下一步做什么?</b></font>
		        <br>
		        <br>
		        <font face="宋体" color="#000000">
		        <b>如果您是从 LB5000 MX 的早期版本升级的,<a href="admincenter.cgi?action=remove">现在到管理中心界面</a></b>!
		        <br><br>从安全性上考虑,当你进入管理中心的同时,本安装文件将会被自动删除。<br>
		        当本安装文件存在的时候,管理中心是不能运行的!如果自动删除失败,那么请你自行利用 FTP 来删除这个本程序!
		        <br><br>
		        <b>如果你是第一次安装 LB5000 MX,那么请<a href="$thisprog?action=step_three">点击这里进入第三步</a></b>!</font>
		        <br><br><br><br><br>
		        );

    $server_port = ":$ENV{'SERVER_PORT'}" if ($ENV{'SERVER_PORT'} ne '80');
    if ($ENV{'HTTP_HOST'} ne "") { $fullurl = $ENV{'HTTP_HOST'}; } else { $fullurl = $ENV{'SERVER_NAME'}; }
    $fullurl     = "http://$fullurl$server_port$ENV{'SCRIPT_NAME'}";
    $myurl       = substr($fullurl,0,rindex($fullurl,"/"));
        $geturl="http://bbs.leoboard.com/cgi-bin/lbver.cgi?ver=LB5000&url=$myurl";

	$out=&lbagent($geturl);
                }


elsif ($action eq "step_three") {

    print qq(
    <font size="5" face="宋体" color="#000000">
    <h1>LB5000 MX 安装向导</b></font></h1><font face="宋体" color="#000000">
    程序编制:<a href="mailto:webmaster\@cgier.com">山鹰糊</a> 参与制作:<a href="mailto:info\@cgier.net">花无缺</a><BR>
    版权所有:<a href="http://www.cgier.com/">CGI 编程者之家</a></font>
    <hr noshade color="#000000">
     <br>
    <font face="宋体" color="#FF0000">
    <b>你是否以前到过这一步?</b>
    <br><br>
    <font face="宋体" color="#000000">
    <b>如果您是从 LB5000 MX 的早期版本升级的,<a href="admincenter.cgi?action=remove">现在到管理中心界面</a></b>!
    <br><br>如果您运行这一步,您将<b>丢失</b>论坛的所有数据!!!
    <hr noshade color="#000000">
    <br>
    <b>第三步:</b><br>
    最后安装部分。这一步将完成论坛的安装,您将能够进入管理中心界面设置论坛风格、颜色等。
    <br>
    <hr noshade color="#000000">
    <br>
    <font face="宋体" color="#0000FF">
    <b>以管理员身份注册您自己</b></font>
    <br><br>
    <font face="宋体" color="#000000">
    您将以管理员身份注册自己,这样就可以正确访问管理中心界面</font>
    <br><br>
    <form action="$thisprog" method="post">
    <input type="hidden" name="action" value="final_step">
    <font face="宋体" color="#000000">
    输入您的管理员名称:(最大12字符)<br>
    <input type="text" name="membername" maxlength=12>
    <br><br>
    请输入管理员密码:<br>
    <input type="password" name="password_one" maxlength=20>
    <br><br>
    请重输管理员密码:<br>
    <input type="password" name="password_two" maxlength=20>
    <br><br>
    <input type="submit" value="提 交 这 个 信 息">
    </form>
    <hr noshade color="#000000">
    <br>
    <b>请仔细检查所有信息,并请紧记您的名称、密码。</b>
    <br><br>);

    } # end step 3

elsif ($action eq "final_step") {

		$namecookie = cookie(-name    =>   "adminname",
		                     -value   =>   "$membername");

		$passcookie = cookie(-name    =>   "adminpass",
		                     -value   =>   "$password_one");

		print header(-cookie=>[$namecookie, $passcookie],-charset=>"gb2312"); print "<head><title>LB5000 MX 安装向导 -- CGI 编程者之家</title></head>$stylesheet<body>";

		print qq(
		<font size="5" face="宋体" color="#000000">
   		<h1>LB5000 MX 安装向导</b></font></h1><font face="宋体" color="#000000">
		程序编制:<a href="mailto:webmaster\@cgier.com">山鹰糊</a> 参与制作:<a href="mailto:info\@cgier.net">花无缺</a><BR>
		版权所有:<a href="http://www.cgier.com/">CGI 编程者之家</a></font>
		<hr noshade color="#000000">
		<br>
		<font face="宋体" color="#000000">
		<b>欢迎使用 LB5000 MX 安装向导!</b>
		<br><br>
		<b>最后一步:</b><br>
		LB5000 MX 安装向导现在建立您的管理员账号。
		<br>
		<hr noshade color="#000000">
		<br>
		);

		require "${lbdir}data/boardinfo.cgi";

		$currenttime = time;
		$blanks = "yes" if (!$membername);
		$blanks = "yes" if (!$password_one);
		$blanks = "yes" if (!$password_two);

		if ($blanks) { print qq(<br><br><font color="#FF0000">请填写完所有选项,使用后退返回上一步。); print "</body></html>"; exit; }
		if ($password_one ne $password_two)  { print qq(<br><br><font color="#FF0000">输入的两次密码不同,请返回上一步重新输入。); print "</body></html>"; exit; }
		if(length($membername)<2)  { print qq(<br><br><font color="#ff0000">管理员用户名太短了!); print "</body></html>"; exit; }
		if($membername =~ /^客人/) { print qq(<br><br><font color="#ff0000">管理员用户名不能为客人字样!);print "</body></html>";exit; }
		if($membername =~ /_/) { print qq(<br><br><font color="#ff0000">请不要在管理员帐号名中使用下划线!); print "</body></html>";exit;}
		if($membername =~ /\t/) { print qq(<br><br><font color="#ff0000">请不要在管理员帐号名中使用特殊字符!);print "</body></html>";exit; }
		if(($password_one =~ /\t/)||($password_two =~ /\t/)) { print qq(<br><br><font color="#ff0000">请不要在密码中使用特殊字符!); print "</body></html>";exit;}
		if(length($password_one)<6) { print qq(<br><br><font color="#ff0000">管理员密码太短了,请更换!密码必须 6 位以上!); print "</body></html>";exit;}
		if ($password_one =~ /^[0-9]+$/) { print qq(<br><br><font color="#ff0000">管理员密码请不要全部为数字,请更换!); print "</body></html>";exit;}
		if ($password_one =~ /[^a-zA-Z0-9]/) { print qq(<br><br><font color="#ff0000">管理员密码只允许大小写字母和数字的组合,请更换!); print "</body></html>";exit;}

opendir (DIRS, "$lbdir");
my @files2 = readdir(DIRS);
closedir (DIRS);
my @memdir = grep(/^members/i, @files2);
$memdir = $memdir[0];

		$memberfilename = $membername;
		$memberfilename =~ y/ /_/;
        	$memberfilename =~ tr/A-Z/a-z/;
		$membersdir = "$lbdir" . "$memdir";

		$filetomake = "$lbdir" . "$memdir/$memberfilename.cgi";

		open (ADMIN, ">$filetomake");
		print ADMIN "$membername\t$password_one\tmember\tad\t0\t$adminemail_in\tno\t保密\t\t\t\t\t\t$currenttime\t\t";
		close (ADMIN);

	    if (-e $filetomake) {
		$filerequire = "$lbdir"."data/boardinfo.cgi";
		if (-e $filerequire) {
		}else {
			 print qq(
			<font face="宋体" color="#FF0000">
			<b>错误!不能够找到 $filerequire 文件!</b>
			<br><br>
			请检查 data 目录属性是否正确: $lbdir/data );
			 print "</body></html>"; exit;
		}

		print qq(
		<font face="宋体" color="#000000">
		<b>恭喜,您的 LB5000 MX 已经成功安装好了!</b>
		<br><br>
		现在,您可以<a href="admincenter.cgi?action=remove">进入管理中心</a>设置您的论坛。<br>从安全角度考虑,本自动安装程序将会被自动删除,以免您的论坛受到不安全的威胁!<br>
		同时我们已经安装了两个论坛附加功能:<br>
		1. LB5000 MX 论坛新新贴子,显示整个论坛的最新贴 ver 1.2<br>
		############################################################################<br>
		# 使用办法: allnews.cgi&maxlength=标题长度<br>
		# 例: 在你主页的适当位置加入以下语句<br>
		#      &lt;script src="$boardurl/allnews.cgi&maxlength=20&display=1"&gt;&lt;/script&gt;<br>
		#      这样就可以在相应位置显示整个论坛的最新贴,标题长度 20,显示发贴时间<br>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -