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

📄 post.php

📁 xm2sv1.0寻梦二手网 v1.0,一个经过我调试的PHP原代码,有机会大家多交流哈
💻 PHP
字号:
<?php

/*
	[DISCUZ!] post.php - post module for new threads & replies or editing post
	This is NOT a freeware, use is subject to license terms

	Version: 2.0.1
	Author: Crossday (info@discuz.net)
	Copyright: Crossday Studio (www.crossday.com)
	Last Modified: 2001/1/16 17:00
*/

require './include/common.php';
require $discuz_root.'./include/discuzcode.php';
require $discuz_root.'./include/post.php';

$ismoderator = modcheck($discuz_user);

if($action) {
	if($tid && $fid) {
		$query = $db->query("SELECT * FROM $table_threads WHERE tid='$tid'");
		$thread = $db->fetch_array($query);
		$fid = $thread['fid'];
		$navigation = "&raquo; <a href=\"viewthread.php?tid=$tid\">$thread[subject]</a>";
		$navtitle = "- $thread[subject]";
	}

	$navigation = "&raquo; <a href=\"forumdisplay.php?fid=$fid\">$forum[name]</a> $navigation";
	$navtitle = " - $forum[name] $navtitle";
	if($forum['type'] == "sub") {
		$query = $db->query("SELECT name, fid FROM $table_forums WHERE fid='$forum[fup]'");
		$fup = $db->fetch_array($query);
		$navigation = "&raquo; <a href=\"forumdisplay.php?fid=$fup[fid]\">$fup[name]</a> $navigation";
		$navtitle = " - $fup[name] $navtitle";
	}

	$fupadd = $fup ? "OR (fid='$fup[fid]' && type<>'group')" : NULL;

	if(!$forum['viewperm'] && !$allowview) {
		showmessage('group_nopermission');
	} elseif($forum['viewperm'] && !strstr($forum['viewperm'], "\t$groupid\t")) {
		showmessage('forum_nopermission');
	} elseif($thread['creditsrequire'] && $thread['creditsrequire'] > $credit && !$ismoderator && !$issupermod) {
		showmessage('thread_nopermission');
	}

	if(!$ismoderator && preg_match("/\[hide=?\d*\].+?\[\/hide\]/is", $message)) {
		showmessage('post_hide_nopermission');
	}

	if($previewpost || (!$previewpost && !$topicsubmit && !$replysubmit && !$editsubmit)) {

		$enctype = (!$forum['postattachperm'] && $allowpostattach) || ($forum['postattachperm'] && strstr($forum['postattachperm'], "\t$groupid\t")) ? 'enctype="multipart/form-data"' : NULL;

		if($smileyinsert && is_array($_DCACHE['smilies'])) {
			$smileyinsert = 1;
			$smcols = $smcols ? $smcols : 3;
			$smilies .= '<tr>';
			foreach($_DCACHE['smilies'] as $key => $smiley) {
				$smilies .= '<td align="center" valign="top"><img src="'.SMDIR.'/'.$smiley['url'].'" border="0" onmouseover="this.style.cursor=\'hand\';" onclick="AddText(\''.$smiley['code'].'\');"></td>'."\n";
				$smilies .= !(++$key % $smcols) ? '</tr><tr>' : NULL;
			}
		} else {
			$smileyinsert = 0;
		}

		if(is_array($_DCACHE['picons'])) {
			foreach($_DCACHE['picons'] as $key => $picon) {
				$icons .= ' <input type="radio" name="posticon" value="'.$picon['url'].'"><img src="'.SMDIR.'/'.$picon['url'].'">';
				$icons .= !(++$key % 9) ? '<br>' : NULL;
			}
		}

		$maxattachsize_kb = $maxattachsize / 1000;
		$allowimgcode = $forum['allowimgcode'] ? 'On' : 'Off';
		$allowhtml = $forum['allowhtml'] ? 'On' : 'Off';
		$allowsmilies = $forum['allowsmilies'] ? 'On' : 'Off';
		$allowbbcode = $forum['allowbbcode'] ? 'On' : 'Off';

		if($discuz_user && $signature && !$usesigcheck) {
			$usesigcheck = 'checked';
		}

	} else {

		if(!$discuz_user && !((!$forum['postperm'] && $allowpost) || ($forum['postperm'] && strstr($forum['postperm'], "\t$groupid\t")))) {
			$password = md5($password);
			$query = $db->query("SELECT m.username as discuz_user, m.password as discuz_pw, m.styleid, m.newpm, u.*, u.specifiedusers LIKE '%\t$username\t%' AS specifieduser
				FROM $table_members m LEFT JOIN $table_usergroups u ON u.specifiedusers LIKE '%\t$username\t%' OR (u.status=m.status
				AND ((u.creditshigher='0' AND u.creditslower='0' AND u.specifiedusers='') OR (m.credit>=u.creditshigher AND m.credit<u.creditslower)))
				WHERE username='$username' AND password='$password' ORDER BY specifieduser DESC");
			@extract($db->fetch_array($query));
			$discuz_userss = $discuz_user;
			$username = $discuz_user = addslashes($discuz_user);

			if(!$discuz_user) {
				showmessage('login_invalid', 'index.php');
			}

			setcookie('_discuz_user', $discuz_userss, $timestamp + 2592000, $cookiepath, $cookiedomain);
			setcookie('_discuz_pw', $discuz_pw, $timestamp + 2592000, $cookiepath, $cookiedomain);
		} elseif($discuz_user) {
			$username = $discuz_user;
			$password = $discuz_pw;
		} else {
			$username = 'Guest';
		}

		if(!$forum['postperm'] && !$allowpost) {
			showmessage('group_nopermission');
		} elseif($forum['postperm'] && !strstr($forum['postperm'], "\t$groupid\t")) {
			showmessage('post_forum_nopermission');
		}

		if(!$parseurloff) {
			$message = parseurl($message);
		}

		$subject = trim(censor($subject));
		$message = trim(censor($message));
	}

	if($forum['password'] != $HTTP_COOKIE_VARS["fidpw$fid"] && $forum['password'] != $_DSESSION["fidpw$fid"] && $forum['password']) {
		header("Location: {$boardurl}forumdisplay.php?fid=$fid&sid=$sid");
		discuz_exit();
	}

	if($previewpost) {
		$currtime = gmdate("$dateformat $timeformat", $timestamp + $timeoffset * 3600);
		$author = $discuz_user ? $discuz_userss : stripslashes($username);
		$subject = stripslashes($subject);
		$message = stripslashes($message);
		$subject_preview = $subject;
		$message_preview = postify($message, $smileyoff, $bbcodeoff, $forum['allowsmilies'], $forum['allowhtml'], $forum['allowbbcode'], $forum['allowimgcode']);

		$urloffcheck = $parseurloff ? 'checked' : NULL;
		$usesigcheck = $usesig ? 'checked' : NULL;
		$smileoffcheck = $smileyoff ? 'checked' : NULL;
		$codeoffcheck = $bbcodeoff ? 'checked' : NULL;

		$topicsubmit = $replysubmit = $editsubmit = '';
	}

	$allowpostattach = (!$forum['postattachperm'] && $allowpostattach) || ($forum['postattachperm'] && strstr($forum['postattachperm'], "\t$groupid\t")) ? 1 : 0;

	if($action == 'newthread') {
		require $discuz_root.'./include/newthread.php';
	} elseif($action == 'reply') {
		require $discuz_root.'./include/newreply.php';
	} elseif($action == 'edit') {
		require $discuz_root.'./include/editpost.php';
	}

} else {

	showmessage('undefined_action');

}

?>

⌨️ 快捷键说明

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